将大量记录存储到经典的asp缓存对象中是SLOW

问题描述:

我们有一些令人讨厌的遗留asp,它表现得像狗一样,我缩小了它的范围,因为我们试图将15K +记录存储到应用程序缓存对象中。但这不是杀手。在它存储它之前,它将ADO流转换成XML然后存储它。这种巨大的记录集到XML的转换刺激了CPU,并在用户发生问题时对用户造成各种严重破坏。不幸的是,我们通过这种XML转换来大量读取缓存,导致网站广泛的性能问题。将大量记录存储到经典的asp缓存对象中是SLOW

我没有资源将所有内容都转换为.net。所以没有了。但我显然需要使用缓存,但在他的情况下缓存是伤害而不是帮助。有没有一种更有效的方法来存储这些数据,而不是每次读取/更新缓存时进行xml转换?

+0

我不知道你为什么“显然”需要使用缓存。首先获取所需的数据需要多长时间(我的意思是跳过缓存并直接转到) – NotMe 2010-05-08 22:40:50

也许你应该看看这里:A Classic ASP Page Caching Objectcached version

您也可以考虑直接存储MSXML2.DOMDocument到该应用程序变量和使用MSXML2.XSLTemplate改造它(4.0或更高版本):

Set oXSLProcessor = xmlStyle.CreateProcessor 
With oXSLProcessor 
    .Input = xmlDoc 
    .Transform 
    Response.Write .Output 
End With 

你可能想试试Caprock Dictionary: http://www.miniat.net/caprock-dictionary-object-component.asp