AppFabric缓存或SQL Server - 具体方案(APPFabric Caching o

2019-09-16 20:54发布

我有困难,搞清楚如果AppFabric缓存或者SQL Server的应该在我们需要的环境下使用(考虑到我们目前使用的大多数事情SQL服务器的事实)。

我们只需要(现在)来缓存数据的小块(〜16KB)他们每个人的对应关联到从应用型服务器(传出请求)的一个发送的特定要求的信息。

任何应用型服务器可以接收相关的初始传出请求传入的请求,并为我们的需求,我们需要找回这种传出请求相关的原始信息......这就是为什么我们不能保持一个本地缓存在内存中的每个应用性服务器,因为我们不能肯定传入的请求将会从中传出的发送请求的应用性服务器上到达。

然而,我们基本上只是需要坚持的〜16KB资料片只有一次(更新非常罕见的可能性),并且能够从任何应用性服务器访问回来,但访问它只有一次在绝大多数情况下。 所以基本上大部分的时间将是从应用性服务器一个写(高速缓存),后来,从同一个读或其他应用性服务器。

在这个特定背景,会不会有通过的AppFabric的缓存集群去,而不是直接去到数据库的任何收益(考虑到这将是一个简单的插入/ select语句)?

牢记可扩展性,这意味着我们目前还没有一个高吞吐量put_data / GET_DATA操作(〜160ops /秒),但我们可能达到1K /秒。10K /秒,也许更在不久的将来。

在此先感谢您的回答。

Answer 1:

的增益AppFabric的缓存与SQL数据库将访问时间。 您将有更快的存取时间的AppFabric是因为它存储在内存(RAM),而一切都需要SQL从磁盘查询它的数据。

在AppFabric的缓存的缺点是,你可能会丢失数据,除非你已经在你的集群实现HA(高可用性),以避免数据丢失,当系统出现故障。 在SQL数据库在这里胜出,因为它支持数据的可恢复性( 通过备份日志- LDFS)应数据库系统失败。

如果你需要可靠的消息传递,你可能不应该使用的AppFabric缓存群集,但SQL数据库的临时持久性,由于其强大的数据恢复支持。



文章来源: APPFabric Caching or SQL server - Specific scenario