我有显示几个关键字的表单(很少更改的标准选项列表)。大约有4个这样的字段,每个字段有大约20个选择。
我在想,缓存关键字是否会对性能/最佳实践有所帮助?是否有确定何时缓存的策略?
发布于 2008-12-04 15:18:40
首先,你应该看看这些关键字的成本。
一般来说,在优化(IE缓存)时,寻找那些能让你获得最大回报的项目。
还要看看旧的80-20规则;大约80项数据只是桶中的一小滴,而800,000项的列表值得一看。
发布于 2008-12-04 16:09:33
您可以在页面指令中使用ASP.NET输出缓存。
<%@ OutputCache Duration="60" VaryByParam="Keyword" %>这将为每个关键字GET/POST请求创建页面的服务器端缓存,每个缓存将持续1分钟。
因此,如果有人访问my-page.aspx?Keyword=Cards,asp.net将呈现该页面,并在内存中将其保存为HTML60秒。如果有人访问my-page.aspx?Keyword=Books,它会用超文本标记语言创建一个单独版本的页面,并将其缓存。
发布于 2008-12-04 16:03:21
使用带有适当字段的惰性初始化singeton来存储数据。例如,在http://www.yoda.arachsys.com/csharp/singleton.html的这个单件
您可以将该属性设置为
"IDictionary<string, IList<string>"如果您希望它们按类别组织,并可按关键字迭代。
您可以使用
"IDIctionary<string, IDictionary<string, string>"IDIctionary
如果您希望能够按类别和关键字进行搜索。如果我没看错你的问题,这对你来说是一个合适的选择。
https://stackoverflow.com/questions/340915
复制相似问题