1:使用数据库保存session, 使用数据库来保存session,就算服务器宕机了也没事,session照样在。数据库
问题:程序须要定制;每次请求都进行数据库读写开销不小,另外数据库是一个单点,能够作数据库的hash来解 决这个问题。 浏览器
2:使用 memcached来保存session, 这种方式跟数据库相似,内存存取性能比数据库好不少。服务器
问题:程序须要定制,增长 了工做量;存入memcached中的数据都须要序列化,效率较低,断电或者重启电脑容易丢失数据;cookie
3: 经过加密的cookie,在A服务器上登陆,在用户的浏览器上添加加密的cookie,当用户访问B服务器时,检查有无Session,若是没有,就检验 Cookie是否有效,Cookie有效的话就在B服务器上重建session。简单,高效, 服务器的压力减少了,由于session数据不存在服务器磁盘上。根本就不会出现session读取不到的问题。网络
问题:网络请求占用不少。每次请求时,客户端都要经过cookie发送session数据给服务器,session中数据不能太多,浏览器对cookie 的大小存在限制。不适合高访问量的状况session