本篇内容介绍了“基于Centos7+Nginx+Tomcat8的负载均衡服务器怎么搭建”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
手动安装好nginx后,一切正常,虚拟主机,负载均衡的配置全部没有任何问题。顺利启用,具体的配置文件如下:
在conf的nginx.conf的文件中加入了:include vhost/*.conf; 以引入vhost目录下的所有的.conf文件,为了以后配置起来简单,当然如果需要的话,也可以一个一个添加。
因为做负载的服务为api服务,在这里conf文件的名字就叫做api.xxx.com.conf,打开文件的配置如下:
在此没有使用ip轮询的方式,而使用的是usstream 的方式,具体这几个方式有什么不同,大家可以百度或google一下相关的介绍。需要注意的是proxy_pass,在此配置的为upstream 的名字,其它的不允许使用,如果直接配置ip地址,则不会实现负载均衡。
其中 weight表示的权重,数越大,权重越高,分配到的机会越大, backup表示的是热备服务器,即在前两个负载都出现问题的时候,热备服务器就会自动承担这些访问。
至此nginx负载均衡配置器配置完成,但是因为涉及到负载之后,若是普通的网址,在访问的时候,就会再现session丢失的情况,因此这个时候,就要处理session 丢失的问题,要处理此问题,有多个解决方案,一个是使用cookies代理,另外 一个实现session的共享,在此使用的是session的共享,在实现共享,需要在tomcat进行相关的配置,要实现这个需求,在此配置的session的共享服务器为redis内存服务,主要是为了保证数据的高效读取与存储,在使用redis进行session共享,必须要添加以下几个名:
这个几个包,支持tomcat8没有任何问题,其它版本的具体支持情况如何,没有进行相关的测试。
然后修改tomcat中的配置文件:
在此看到的10.0.0.x的地址,全部是内网完成的, 外网不通,只有负责负载的服务器才直接连接的外网。
在这个时候,可以顺利启动tomcat服务器,与nginx服务器了,但是在此之前,必须要先启动nginx服务器,否则tomcat可能会出现启动失败的情况。nginx服务可以顺利启动
三处配置如下:
nginx.conf中添加的引用内容
include vhost/*.conf;
负载均衡配置:
upstream api.xxx.com { server 10.0.0.12:8080 weight=5; server 10.0.0.15:8081 weight=5 ; server 10.0.0.16:8080 weight=5 backup; } server { listen 80; server_name api.xxx.com; location / { proxy_set_header host $host; proxy_set_header x-real-ip $remote_addr; proxy_set_header x-forwarded-for $remote_addr; proxy_pass http://api.xxx.com; } }
tomcat配置
<valve classname="com.radiadesign.catalina.session.redissessionhandlervalve" /> <manager classname="com.radiadesign.catalina.session.redissessionmanager" host="10.0.0.16" port="10000" database="0" maxinactiveinterval="60" />
“基于Centos7+Nginx+Tomcat8的负载均衡服务器怎么搭建”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。