当用户登录到应用程序时,我将他的所有数据从数据库加载到分布式缓存中。
这意味着除非缓存出现问题,否则在用户注销之前,我永远不会再次从数据库中选择数据。
这是明智的吗?appfabric 缓存能否为我提供与 SQL Server 数据库相同或更好的性能?
它每天会给我数千个请求,而且请求一个接一个地发生得非常快。
当用户登录到应用程序时,我将他的所有数据从数据库加载到分布式缓存中。
这意味着除非缓存出现问题,否则在用户注销之前,我永远不会再次从数据库中选择数据。
这是明智的吗?appfabric 缓存能否为我提供与 SQL Server 数据库相同或更好的性能?
它每天会给我数千个请求,而且请求一个接一个地发生得非常快。
任何缓存都将为您提供比数据库更好的性能。
您可以使用 appfabric 会话状态提供程序并将您的数据存储在会话变量中。
你可以用 redis 做同样的事情(恕我直言,这是一个比 appfabric 更好的解决方案——我都广泛使用过)
如果您没有运行网络场/多个应用程序访问缓存,您甚至可以考虑使用 .net 4 ObjectCache - 它只是使用内存而不是专用缓存服务的额外开销,并且仍然可以获得到期等功能.
缩放规则 #1 - 缓存所有内容!
我在一个每月有 1300 万页面浏览量的网站上工作(与其他一些网站相比可能没有那么多),我们使用了 AppFabric。当我们的网站被各种电视新闻台报道时,我们能够处理 35 倍的峰值。
当 AppFabric 不工作时,SQL 会在一两个小时后死掉。
根据我的经验,它将处理您的流量。设置一个集群,如果它不堪重负,就继续添加节点。