集群session共享

11
《集群Session共享》 丁海亮 2012-05-09

Upload: dhlzj

Post on 16-Jun-2015

800 views

Category:

Technology


6 download

DESCRIPTION

集群session共享

TRANSCRIPT

Page 1: 集群Session共享

《集群Session共享》

丁海亮

2012-05-09

Page 2: 集群Session共享

议程

有状态架构

无状态共享

回收机制

解决方案

SSO单点登录

Page 3: 集群Session共享

何为状态

Page 4: 集群Session共享

Cookie和Seesion隐患

[Cookie伪造] [Session劫持

]

Page 5: 集群Session共享

有状态架构(Stateful)

处理流程:

(1)用户第一次请求服务器,服务器端产生新的sessionid(session的有效期

在服务器端设置)

(2)服务器在响应客户端时将sessionid保存到Cookie中(该Cookie直到浏览

器关闭后失效,即MaxAge为-1)

(3)用户再次请求服务器后(比如刷新页面,或者访问指定的页面),服务器

端会更新session的lastModified时间

(4)关闭浏览器后,重新请求服务器,产生新的sessionid

(5)如果需要长期保持客户端与服务器端的会话,那么建议使用Cookie

Page 6: 集群Session共享

无状态共享(Restful)

REST的设计概念和准则:

1.网络上的所有事物都被抽象为资源2.每个资源对应一个唯一的资源标识3.通过通用的连接器接口对资源进行操作4.对资源的各种操作不会改变资源标识5.所有的操作都是无状态的。

Page 7: 集群Session共享

回收机制(gc_probability/gc_divisor)

(1)定时清理(2)使用概率

Page 8: 集群Session共享

解决方案

(1)客户端存储方案:把session加密后存在cookie中,每次session信息

被写在客服端,然后经浏览器再次提交到服务器.即使两次请求在集群中的

两台服务器上完成,也可以到达session共享.

(2)集中式session共享方案:提供一个群集保存session共享信息.其他

应用统统把自己的session信息存放到session群集服务器组.当应用系统需

要session信息的时候直接到session群集服务器上读取.

(3)Session复制方案:将状态信息同步到多个web服务器

Page 9: 集群Session共享

SSO单点登录

Page 10: 集群Session共享

SSO单点登录

Page 11: 集群Session共享

Thank You