我们尽可能地减轻我们的页面加载.由于ViewState有时可能会升高到100k页,我很乐意完全消除它.
我很乐意听到别人用来将ViewState移动到自定义提供者的技术.
也就是说,有几点要注意:
>我们每小时平均拥有200万名游客.
因此,数据库读取一直是性能上的一个严重问题,所以我不想将ViewState存储在数据库中.
>我们也是一个负载平衡器,所以任何解决方案必须与用户从机器到每个回发的机器一起工作.
想法?
解决方法
你如何处理会话状态?有一个内置的“在会话状态下存储viewstate”提供程序.如果您将会话状态存储在某些快速的proc系统中,那么这可能是viewstate的最佳选择.
protected override PageStatePersister PageStatePersister { get { return new SessionPageStatePersister(this); } }
此外,这绝对不是一个完美的(甚至是好的)解决方案给一个大的观看状态.和往常一样,尽量减小viewstate的大小.但是,SessionPageStatePersister相对比较聪明,避免每个会话存储无界数的viewstates,并避免每个会话只存储一个viewstate.