解决session共享有哪些方案
1个回答
展开全部
1. 通过组播的方式进行集群间的共享,比如tomcat目前就具备这样的功能,优点是web容器自身支持,配置简单,适合小型网站。缺点是当一台机器的上的session变更后会将变更的数据以组播的形式分发给集群间的所有节点,对网络和所有的web容器都是存在开销。集群越大浪费越严重。不能做到线性的扩展。
2. 利用NFS等一些共享存储来共享Session数据
大致就是有一台公共的NFS服务器做共享服务器,当然也可以采用数据库,所有的Web服务器都把session数据写到共享存储介质上,也都要来这台服务器获取session数据,通过这样的方式来实现Session数据的共享。相比前面组播的方式来说,网络开销较小。缺点是受制于存储设备的依赖,如果存储设备down掉,就无法工作了,要做好主备同步等一些容灾措施。另外,当访问量过大时,磁盘的IO也是一个非常大的问题。
2. 利用NFS等一些共享存储来共享Session数据
大致就是有一台公共的NFS服务器做共享服务器,当然也可以采用数据库,所有的Web服务器都把session数据写到共享存储介质上,也都要来这台服务器获取session数据,通过这样的方式来实现Session数据的共享。相比前面组播的方式来说,网络开销较小。缺点是受制于存储设备的依赖,如果存储设备down掉,就无法工作了,要做好主备同步等一些容灾措施。另外,当访问量过大时,磁盘的IO也是一个非常大的问题。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询