nginx+tomcat集群session共享

1.  常见的 Tomcat 集群解决方案:

  1)采用 nginx 中的 ip hash policy 来保持某个 IP 始终连接在某个机器上

  优点:可以不改变现有的技术架构,直接实现横向扩展,省事。但是缺点也很明显,实际生产中,极少使用这种方式

  缺点:a)单个服务器请求(负载)不均衡,这是完全依赖 ip hash 的结果   b)客户机 ip 动态变化的情况下,无法进行服务,因为可能每次的 ip hash 都不一样,就无法始终保持只连接在同一个机器上

  2)采用 redis 或 memcache 等 nosql 数据库,实现一个缓存 session 的服务器,当请求过来时,所有的 tomcat server 都统一往这个服务器里读取 session 信息。这是企业中比较常用的一种解决方案。

  

2. nginx 负载均衡配置,常用策略,场景及特点

  1)轮询(默认)

  优点:实现简单

  缺点:不考虑每台服务器的处理能力

  2)权重,使用较多的策略

  优点:考虑了每台服务器处理能力的不同,哪台机器性能高就给哪台机器的权重高一些

  

  3)ip hash 

  优点:能实现同一个用户始终访问同一个服务器

  缺点:根据 ip hash 不一定平均

  4)url hash (第三方插件,需要事先安装插件)

  优点:能实现同一个服务访问同一个服务器,也就是根据 url 进行负载

  缺点:和 ip hash 一样,根据 url hash 分配请求不一定平均,请求频繁的 url 会请求到同一台机器上

  5)fair (第三方插件,需要事先安装插件)

  特点:按后端服务器的响应时间来分配请求,响应时间短的优先分配

3. 安装部署

   https://blog.51cto.com/zero01/2112989

  

猜你喜欢

转载自www.cnblogs.com/lili-xia/p/12460838.html