我用sessionstate服务来存的,更新没有任何问题。
多谢对于sessionstate关键词的提供,通过查找这个,我找到一篇文章,大致可以解决我的问题http://www.cnblogs.com/snlfq2000/archive/2009/11/15/1603234.html
session序列化
谁序列化?序列化后放在哪里?然后网站更新完毕后,IIS如何再读取这些session?
@EEcho:
只是提供一个思路:
服务器没有序列化的话,可以在程序中序列化。
可以存到文件里,也可以存到数据库中。在更新完重启时,读入session数据。
楼下的想法蛮好,给用户的感觉是服务器没有中断过。对服务端的实例逐个更新。这个需要conncetor和服务器分开吧
同时有多个server的instance, 跟新的时候用户连接其他的
多个server的instance?不明白,能不能讲具体些呀,用户正在连着server1,那我如何给嫁接到server2上呢
使用独立的状态服务器,比如 session 可以支持保存在数据库中,或者 Memcached 中,当然也可以自己重写。
状态服务器是就像邮件服务器那种性质的吗?也就是说,状态服务器也是可以人为写一些服务专门检测IIS的状态?或者某网站的状态,在监测到网站重启前,就先把session存起来?启动后,再把session放出来?
可以选择深夜更新
想办法session 不丢就可以,如把session保存在sqlserver ,或者自定义session保存在Memcached
的确,需要一个统一的持久化保存你需要信息的载体。
session保存到数据库
断了断了,重新登陆,必须了,
得看具体业务系统要求了,用户正在提交一个表单,服务发生了重启,即使用了事务,用户还是有需要再次提交的麻烦。所以最好的办法是深夜更新。这就是为什么电信移动运营商为什么都在凌晨更新的缘故。
如果是为了验证用户,保存到stateserver治标不治本,应该采用forms认证