请教一个关于State Server的问题

发财蛇 2004-06-23 12:46:33
Session保存可以设置到一个State Server中,这样可以处理跨服务器的Session保存。
本人不明白以下几个问题,请高手解答一下,谢谢
1.怎样设置State Server的权限,也就说,怎样控制允许的Web Application可以保存
Session
2.看到一些文章提到Session在SqlServer或State Server中会丢失,为了解决这个问题
需要将所有的类Serializable,能不能详细解释下丢失和Serializable的原因???
谢谢!!

...全文
104 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
neilwang 2004-06-23
  • 打赏
  • 举报
回复
1.好像无法控制State Server的权限,写Session和读Session都是程序代码做的事情,在代码里自己判断,不允许读写session。
2.最容易丢失的是Inproc,进程一结束,application一重启就丢失了;sqlserver最不容易丢失,即使重新启动机器也不会丢失。SqlServer或State Server允许用不同的机器作为session服务器。并不是会丢失而要序列化,是因为数据要存到另一个进程空间中去,所以要先序列化变成string后才传到session server。
发财蛇 2004-06-23
  • 打赏
  • 举报
回复
~
cnlamar 2004-06-23
  • 打赏
  • 举报
回复
StateServer在asp.net里是首次出现,或许是设计的不成熟造成的,asp.net1.x里设计不成熟的地方随处可见……
发财蛇 2004-06-23
  • 打赏
  • 举报
回复
cnlamar(无中生有)
===================
我也这么理解,

另外,看到相关资料说使用StateServer的每台WEB SERVER中的AllicationPath必须一
样,也就说A服务器中有虚拟目录aaa/
b服务器同时也要有aaa目录,相反,B服务器中的目录,A也要有,也就是IIS的
Metabase必须同步。这是为什么?是一个BUG吗?
cnlamar 2004-06-23
  • 打赏
  • 举报
回复
我想序列化是发生在对象从应用服务器传递到State Server的时候,asp.net会帮你处理好的,但你要保证你传递过去的对象可以被正常的序列化,也就是一些自定义对象需要在内部支持序列化
发财蛇 2004-06-23
  • 打赏
  • 举报
回复
当所有的服务器拥有相同的machineKey他们才能共享Session,i see
发财蛇 2004-06-23
  • 打赏
  • 举报
回复
哦,是不是当Session中保存的是对象的时候这个对象必须是序列化的,如果我只保存的是用户名称这样的String类型是不用序列化的!
这样理解对不对?
发财蛇 2004-06-23
  • 打赏
  • 举报
回复
谢谢 neilwang(无)
1.当我设置一台服务器为State Server后,想了解怎样控制非法站点在State Server中保存Session信息,因为State Server地址很可能是公开的,如果别的站点都将它的Session保存在我的State Server上,这其不是件很懊恼的事情?
2.我可不可以这样理解:当设置一台State Server后,必须要将序列化?能否说明一下,在哪个地方应该序列化。或者给段例子,谢谢!!!

62,244

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧