分布式学习记录

140 阅读1分钟

一:分布式环境下的session丢失问题

    在使用nginx作为负载均衡和反向代理的情况下,有3中解决方案

1:nginx有多种负载均衡策略,分别是轮询,权重,ip_hash。 采用ip_hash作为负载均衡策略,这样使用同一个ip访问的请求,都会转发到同一台服务器。

优点:代码侵入性小

缺点:会导致每台机器的负载会出现较大的差异


2:tomcat的session共享和复制。其中一台tomcat的session发生变化后,其他的tomcat也会进行改变

优点:代码侵入性小

缺点:数据量大的情况下,会占用较大的网络io,已经占用服务器的内存。


3:session统一存储到缓存服务器redis中

优点:稳定,也不会占用服务器资源

缺点:代码侵入性大,要修改应用的代码。


二:分布式环境下的数据一致性