Nginx反向代理及负载均衡如何实现(基于linux)
这里来试验下nginx的反向代理。
反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
在我们的java项目中的体现就是,通过80端口访问,Nginx接收到,然后进行转发给tomcat服务器,再将服务器的结果给返回。
这里需要修改nginx.conf文件。
upstream backend {
#代理的IP weight权重大的,接收的访问量就大,反之
server localhost:8084 weight=50;
server localhost:8088 weight=50;
}
将接收的请求进行转发:
# / 所有做负载均衡 + 反向代理
location / {
root /data/wwwroot1;
index index.html index.htm;#索引文件
proxy_pass http://backend;
}
这样,通过请求nginx的请求,就可以被分配转发到tomcat上去。这里我是定义了两台tomcat服务器,同时用来做负载均衡的处理。通过设置weight,可以控制访问量。
具体配置代码如下;
#user nobody;
# worker 工作进程 一般设置 CPU数 * 核数
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
# 设置连接特性
events {
worker_connections 1024;#1个worker产生多少个连接数
}
# 配置HTTP服务器的主要段
http {
include mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_age
测试结果发现,通过访问80端口的地址,展现的结果是基本五五开的。

还会随机访问到

以上两个截图,分别对应了我的两个tomcat服务器下的测试文件。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持本站。
版权声明:本站文章来源标注为YINGSOO的内容版权均为本站所有,欢迎引用、转载,请保持原文完整并注明来源及原文链接。禁止复制或仿造本网站,禁止在非www.yingsoo.com所属的服务器上建立镜像,否则将依法追究法律责任。本站部分内容来源于网友推荐、互联网收集整理而来,仅供学习参考,不代表本站立场,如有内容涉嫌侵权,请联系alex-e#qq.com处理。
关注官方微信