我们在ASP .NET中开发的站点预计会有1000个并发用户,并且由于数据库中列表数量的增加而导致其性能下降。什么样的缓存(如NCache或Appfabric)将是最好的减少数据库负载并提高性能的并发用户。请给我一些建议。ASP .NET应用程序缓存
2
A
回答
2
如果你有多台服务器运行比Appfabric类的缓存系统将有很大的帮助。在构建asp.net缓存系统也是好的,如果要用于单个服务器。其中最重要的因素是你将拥有的RAM容量。如果要添加更多RAM,您的网站将更快,更快。即使memcache也可以使用Is there a port of memcache to .Net?。即使你看到堆栈溢出这样的网站,他们在数据库服务器上也有大约380 GB的RAM,这使得它快速减少。即使SQL服务器也是为了将数据保存在RAM中以使其快速访问。
2
在使用分布式缓存之前,首先审核您的网站性能。过去人们绝对想要应用一些对他们毫无用处的东西,我看到了太多的错误。
您的网站变得缓慢,1000个并发用户?好的,这很正常:小型网站没有像大型网站那样的架构。但让我们看看为什么(无序列表):
- 简单地说,什么是慢?一个网页,整个网站?
- 网络:您的网络基础设施是否最优?
- DB:数据库是否过载?您的Queres可以优化吗?
- MVC:你在使用异步吗?会话? web Api呢?
- 网络:网络性能如何? (CDN,脚本,CSS,请求数,...)
要尽快检测系统中的瓶颈,有两种方法:负载测试和监控生产系统。
在这背后,有ScaleIn VS ScaleOut挑战。我没有说分布式缓存对你来说不是很好的解决方案:我只是说最简单!
0
我强烈建议您查看您的ASP.NET应用程序的NCache。 NCACHE
是一个非常功能的.NET应用丰富的分布式缓存,并远远超过应用面料更强大
。
您可以使用NCache进行应用程序数据缓存,ASP.NET会话状态存储和运行时数据共享。
0
在GET操作使用:outputcache/
如果您使用保存到数据库
EF => Configuration.AutoDetectChangesEnabled = false;
大多数问题在不良优化的代码。
相关问题
- 1. ASP .Net MVC应用程序
- 2. 在.Net Windows应用程序中缓存
- 3. .NET 2应用程序缓存HttpRuntime
- 4. ASP .Net MVC 5 JsonResult缓存
- 5. Asp .Net文件缓存
- 6. 使用Velocity进行Asp .Net MVC缓存
- 7. .NET应用程序高速缓存vs数据库高速缓存
- 8. asp .net应用程序性能
- 9. ASP .NET MVC应用程序UML类图
- 10. ELMAH for ASP .NET MVC Windows应用程序
- 11. ASP登录从C#.NET应用程序
- 12. ServiceStack.Razor打破asp-net MVC应用程序
- 13. ASP .NET 5应用程序部署
- 14. SQLite缓存与应用程序缓存
- 15. 缓存asp网络应用程序的静态数据
- 16. 应用程序缓存或JSON
- 17. 缓存应用程序块
- 18. 缓存Web应用程序
- 19. 应用程序缓存html5
- 20. 在WPF应用程序中使用ASP .NET PROFILE提供程序
- 21. 清除无法使用.NET下载的应用程序缓存?
- 22. 使用非.NET应用程序的Azure缓存控制
- 23. 开发.net MVC3应用程序使用AppFabric 1.1进行缓存
- 24. IIS回收vs ASP .NET缓存
- 25. ASP .Net MVC Web应用程序集成引导程序模板
- 26. 存储过程和ASP .NET
- 27. IIS/ASP缓存
- 28. IIS ASP缓存
- 29. 将多个ASP .NET应用程序部署到单个Elastic Beanstalk应用程序
- 30. 如何获得通过(ASP).NET应用程序编程总分配的内存?