asp.net-mvc – 缓存的最佳解决方案
在基于Web的应用程序中实现缓存的最佳位置在哪里?
>在表示层(希望不是)? 我将使用像memcached或MS Velocity这样的东西. 我只是发现自己编写了如此多的代码来更新业务逻辑层中的缓存,那么在数据库服务器的数据访问层之间创建一个结构来缓存数据会更好吗? 我认为这些复杂性是事实,我们缓存的大部分数据都是用户特定的,我们正在复制缓存中的数据.我们努力寻找最佳解决方案. 解决方法
缓存是一个重要的部分或Web应用程序,但没有适合每个项目的神奇解决方案.在应用程序运行之前进行优化通常是个坏主意.在问自己应该在哪里实现缓存层之前,第一步是确保您的应用程序在没有任何缓存优化的情况下运行良好(即使很慢).
当第一步实现时,您可以开始分析应用程序,列出似乎使用大量资源的功能(可能是CPU,内存,I / O,数据库访问)或花费大量时间来完成(通常是因为相同的症状). 一旦你有一个你认为可以用缓存系统优化的功能列表,你需要问自己两个问题: >“我如何同时改进所有这些功能”(宏观焦点):这个问题的一个明显答案通常是数据访问缓存.如果您获得的数据始终相同,您通常不希望一遍又一遍地向数据库服务器发送相同的查询.因此,将这种类型的数据存储在缓存中,具有巧妙的使用寿命,总是一个好主意. 您要弄清楚的优化可能与您的应用程序的任何层(表示,业务逻辑,数据)有关,但这并不意味着您应该全部实现它们.您应该考虑以下几个重要事项: >这个功能真的需要优化吗? (这对客户来说是一个显着的收益吗?对于硬件?对于整个应用程序?对于其他应用程序?) 一旦您获得了这些问题的答案,就可以与您的项目经理,您的同事,甚至那些不与您一起处理该应用程序的人员讨论这个问题.持中立意见是好的,并且有非技术性(或技术性较差)的意见.与这些人交谈应该可以帮助你弄清楚应该做什么和不应该做什么. 此时,您应该有一个非常清楚的优化列表,您已经多次考虑过,并且编码和测试它们应该没有问题. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- jqgrid与asp.net webmethod和json使用排序,分页,搜索和LINQ
- asp.net-mvc – 我可以获取html.HiddenFor / Html.Hidden创
- asp.net-mvc-3 – mvc3剃刀条件包装器div
- asp.net – 在文件夹及其子文件夹上创建缓存依赖性
- 哪个是在ASP.NET中使用字符串的最佳实践(C#)
- asp.net – 如何处理在IIS上运行的网站的计划任务?
- asp.net-mvc – 在MVC中,何时使用<%=%>和<%%&g
- asp.net-mvc – ASP.NET MVC模型验证错误本地化上下文
- ASP.NET成员提供程序 – 单一登录
- asp.net-mvc – Chrome 27中SignalR和跨域请求的问题
- asp.net-mvc – SelectList选择的值未转移到Drop
- asp.net C#中的SQL IN运算符
- asp.net – ScriptIgnore ASP 6
- 数组 – 如何在vbscript中实现具有可变大小的数组
- asp.net – 如何使用jquery或jscript触发单击按钮
- asp.net – 如何在客户端上为CustomValidator控件
- asp.net – 与IIS7的ASP MVC路由问题
- asp.net – 仅包含所需参数的自定义MembershipUs
- asp.net-mvc – 如何在ASP.NET MVC控制器中设置十
- asp.net – NServiceBus在Web / MVC4 SQL架构中有