session性能问题

  注意性能和可伸缩性的概念区别:

  1. 什么是性能问题?如果你的系统对于一个用户访问还很慢,那就是性能问题;
  2. 什么是可伸缩性问题?如果你的系统对一个用户来说是快的,但是在高访问量下就慢了。

  在单机(JVM)环境下性能不会受影响, 如果你的业务访问量比较大, 需要集群环境/分布式时, session复制会导致网络风暴, 也就是说依赖session会使得应用un-scalable;

  具体解释:其实是因为Session + 状态是不可伸缩的。
  详细点是这样:如果你在Session中保存一个与该客户端有关的状态,比如状态数值为1,下次该客户端再发一个请求时,需要到自己的Session中寻找这个数值为1的状态。
  在分布式环境中有两种办法:

  1. 如果下次该客户端发出的请求不是访问的是上次请求的服务器,那么他在新服务器中就找不到数值为1的状态,因为被负载平衡器随机分配到新服务器上了。
  2. 为了让他找到数值1的状态,那么就在这两台服务器之间拷贝Session中的状态,数值1的状态从原来服务器拷贝到新服务器,第二次请求就能在新服务器上找到这个数值为1的状态。但来这样做的问题是:服务器就会耗费负载来处理服务器之间的拷贝,根本没有全心全意处理客户端发出的请求,严重发生风暴堵塞。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值