随着社会的发展和科技水平的不断提高,互联网在人们日常生活中扮演着越来越重要的角色,同时网络安全,网络可靠性等问题日益突出。传统的单体服务架构已不能满足现代用户需求。随之而来的就是各种分布式/集群式的服务架构模式。实现多台服务共同提供服务。最常见的就是Nginx代理技术。 对于用户的请求到达nginx代理服务器后,根据不同的策略被转发到不同的server上,以实现负载均衡。 使用多个Tomcat实例,配置server.xml <!-- Connector中使用线程池 --> 修改:不同的实例中使用不同的端口号 <1>----------------------------------------------------------------------------------------------------------------------------- <Connector executor="tomcatThreadPool" port="8081" protocol="org.apache.coyote.http11.Http11AprProtocol" <Connector port="8009" protocol="AJP/1.3" redirectPort="8443"/> <2>----------------------------------------------------------------------------------------------------------------------------- <Connector executor="tomcatThreadPool" port="8082" protocol="org.apache.coyote.http11.Http11AprProtocol" <Connector port="8019" protocol="AJP/1.3" redirectPort="8443"/> ... 在环境变量中配置多个CATALINA_HOME,分别对应各自的tomcat实例,还需修改catalina.bat和startup.bat中各自的CATALINA_HOME的名字和环境变量中的要对应。 部署好项目。 配置Nginx:在。。Nginx/conf/nginx.conf,打开并配置nginx.conf #tomcat 集群配置 #ip_hash 根据客户端ip地址的hash值分配将要转发的server(由于此ip是固定的,可以实现session共享。另外使用redis,springSession也可以实现session共享机制); #fair 根据server的响应速度快慢分配; # url_hash; #默认采用轮询方式 分别启动应用服务,再启动nginx服务 最后,访问 http://localhost:9090/(项目名称)
|
|