Zookeeper注册中心详解

、分布式系统核心技术

1、分布式 Session

1. Session粘滞

即粘性Session,当用户访问集群中某台机器后,强制指定后续所有请求都落到此台机器上。

使用场景:机器数适中,对稳定性要求不是非常苛刻。

优点:实现简单,配置方便,没有额外网络开销。

缺点:网络中有机器Down掉时,用户Session会丢失,容易造成单点故障。

方案:Nginx的ip_hash负载均衡方案。

2. Session复制

将一台机器上的Session数据广播复制到集群中其余机器上。

使用场景:机器较少,网络流量较小。

优点:实现简单,配置较少,当网络中有机器Down掉时不影响用户访问。

缺点:广播复制到其余机器有一定延迟,带来一定网络开销。

方案:开源方案Tomcat-Redis-Session-manager,暂不支持Tomcat8。

3. 缓存集中式管理

将Session存入分布式缓存集群中的某台机器上,当用户访问不同节点时,先从缓存中拿Session信息。

使用场景:集群中机器数较多,网络环境复杂。

优点:可靠性好。

缺点:实现复杂,稳定性依赖于缓存的稳定性,Session信息方入缓存时要有合理的策略写入。

方案:开源方案Spring-Session,也可以自己实现,主要重写HttpServletR

你可能感兴趣的:(Linux,Windows,SRE,运维部署与监控,java-zookeeper,zookeeper,分布式)