2010-07-06 41 views
0

我有一个关于会话变量的问题。我们使用可序列化的值对象来存储值。有时我们使用复合/聚合对象,我想知道这些对象占用了多少内存。测量会话变量大小/重量 - Plus - 是否有会话压缩?

看看这些对象有多大是一个好方法,所以我可以看到它们在服务器上使用的是什么类型的内存。

而且 -

有什么要压缩和会话变量做了什么?我不知道我们是否可以在写入变量前压缩它们,并在检索它们时解压缩它们。这有什么价值吗?

非常感谢。请让我知道你是否需要更多细节。

回答

1

有很多方法可以给这只猫上皮,我相信它已经在这里了,但我会用adplus and Windbg

至于压缩,这听起来像ASP.Net 4.0的好消息,有能力压缩超出proc会话状态。虽然没有帮助你。我相信第三方会话状态提供者正在做某些事情,但我不知道。可能对你也没有帮助。

我认为相关的问题是您想要保存什么,以及您愿意为此付出多少代价?在进程中,您正在交易CPU的内存以及解压缩所需的时间。如果它存储在某种会话服务器中,那么关心的问题必须是连线或磁盘空间上的时间(我怀疑)。

虽然你比我更了解你的代码,但我认为它仍值得退后一步,并询问这个对象是否值得在状态中保存,或者只是它的一部分是昂贵的或不可能的重建?

+0

哇,谢谢!从未使用WindBG。真棒。这个问题由于多部分形式而发挥作用。在导航前进<&>回来通过录入过程中,我检索数据时从一个重新加载。我曾经使用一系列面板和持久对象通过发送它们到viewstate(或让控件通过viewstate处理值)来做这种技术,但是我这次尝试数据检索方法。 现在,我可以看到这些对象有多大,我想看看这两种方式的表现如何。 – 2010-07-07 11:43:54