在我们的.NET web应用程序中,我们为每个登录的用户提供了一个大约5-7千字节的会话对象。会话存储一个Dictionary对象,该对象包含两个类和用户的身份验证令牌。这个会话大小是否太大了?我真的不知道什么是好的尺寸,或者我应该在会话中遵循什么好的做法。你们中有谁有想法吗?谢谢
发布于 2009-06-10 16:41:36
只在会话中放入绝对必要的内容。否则,缓存它或使用您存储在会话中的ID从其他地方检索它。如果它可以转到其他地方,那么很可能是它需要转到其他地方,而不是在您的session对象中。
发布于 2009-06-10 16:48:40
TheTXI和DevelopingChris提供了最佳实践,但这里是您的标题问题的最终答案:只有您才能知道您的会话是否太大。如果您在web服务器上没有遇到内存使用问题(或者web和状态服务器之间的流量,如果您使用的是外部状态服务器),那么您的会话没有存储太多的内存;如果您遇到了,则是。
最佳实践当然可以帮助您在遇到问题时解决问题,并减少问题发生的可能性,但如果您拥有的东西没有损坏,那么您最好将宝贵的开发精力花在影响用户或可维护性的代码部分上。
发布于 2009-06-10 16:40:27
一般的行业标准是将其降低到尽可能低的水平,缓存对象,并将id存储在会话中,以便在下一次请求时检索它们。
通常,在asp.net中,运行多盒应用程序时会出现问题,必须将会话存储在数据库中,然后将其反序列化为对象。
如果您最终选择了这种方式,那么访问数据库中的xml,然后对其进行反序列化比访问记录本身更有意义。
https://stackoverflow.com/questions/976782
复制相似问题