nginx反向代理商负载均衡

作者 : 开心源码 本文共2162个字,预计阅读时间需要6分钟 发布时间: 2022-05-11 共91人阅读

负载均衡,说白了,所有请求发给A服务器,而后它转发到其它服务器中实现负载均衡

反向代理商的好处

处理了网站服务器对外可见的问题,提高了网站服务器的安全性;

节约了有限的IP地址资源,后台服务器均可用私有IP地址与代理商服务器进行通信;

加速了网站的访问速度,减轻了真实web服务器的负荷。

反向代理商的工作流程

使用户通过域名发出访问请求,该域名被解析为反向代理商服务器的IP地址;

反向代理商服务器接收使用户的请求;

反向代理商服务器在本地缓存查找能否存在当前使用户所请求的内容,找到则直接把内容返回给使用户;

假如本地没有使用户请求的内容,反向代理商服务器会以自己的身份去后台服务器请求同样的信息内容,并把信息内容发给使用户,假如信息内容是能被缓存的,则会将该内容缓存在代理商服务器的本地缓存中。

负载均衡的配置流程:

1.在etc/nginx/cond.f路径下创立.conf类型的文件,在文件里面增加如下代码

upstream backend{ #ip_hash; server 127.0.0.1:9701 weight=1; server 127.0.0.1:9702 weight=2;}server { listen 8005;//就是通过外网访问的端口 server_name 127.0.0.1;  access_log /var/log/nginx/nginx_demo_access.log; error_log /var/log/nginx/nginx_demo_error.log; charset utf-8; client_max_body_size 75M; #root /home/linux/Desktop/wll_MySite; location / {  proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_buffering off; proxy_pass http://backend; }}12345678910111213141516171819202122

配置好以后将写好的django项目上传到服务器中,上传到服务器不同的文件夹下,开始为项目配置uwsgi的配置文件(每一个路径都要配置),代码如下:

[uwsgi]# Django-related settingssocket = 127.0.0.1:9801# 项目绝对路径#一般放在www下面,chdir = /home/linux/Desktop/word# Django的wsgi文件相对路径#项目重命名后,要注意文件的相对路径并没有改变wsgi-file = mysite/wsgi.py# process-related settings # mastermaster = True# 最大进程数#根据情况设置processes = 4# 线程数threads = 2#设置此参数,有一个主进程master=True#守护进程的方式运行,log日志存在此log文件里#每个项目对应一个log文件deamonize=/var/log/uwsgi/djangoProject.log#主进程id写入文件里pidfile= /var/log/nginx/uwsgi.pid# ... with appropriate permissions - may be needed# chmod-socket = 664#退出时,清除环境vacuum = Truereload-mercy = 10max-requests = 5000limit-as = 512buffer-size = 300001234567891011121314151617181920212223242526272829303132

在进入.conf文件

server { listen 9701;  server_name 127.0.0.1  access_log /var/log/nginx/myblog_access.log; error_log /var/log/nginx/myblog_error.log; charset utf-8; client_max_body_size 75M; root /home/linux/Desktop/1/Hello; location / {  include uwsgi_params; uwsgi_pass 127.0.0.1:9801; uwsgi_read_timeout 30; }  location /static/ { expires 30d; autoindex on;  add_header Cache-Control private; alias /home/linux/Desktop/1/Hello/static/; } }123456789101112131415161718192021

上面9701和9708进行绑定

2)重启nginx:

sudo service nginx restart

打开三个终端进行运行项目(和**.ini文件同一目录下执行):

uwsgi -ini 配置文件的路径(hello/1.ini)

9801 9802 9803 nginx和uwsgi交互的端口号

9701 9702 9703 三个服务器端口

8005 浏览器登录端口

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » nginx反向代理商负载均衡

发表回复