AppFabric缓存-读取/写入滞后策略



在我们的新项目中,我们希望AppFabric缓存成为一个关键组件。一般来说,我们将有一个写模型/域和一个读模型/域:后端服务由提供商/其他服务通知,并将根据业务规则将一些数据放入缓存中。前端服务/网站将根据需要使用数据。

通读/背后写似乎是个不错的方法。但是,如何将其实现为真正的业务解决方案呢?我看到的每个例子都使用ADO.NET的一个简单查询来加载数据。在我们的案例中,加载数据依赖于业务,并且将涉及许多程序集和交互。将我们所有的业务部署到每个缓存主机似乎不是一个好的解决方案。

另一种方法是为每个域提供一个唯一的服务,负责从缓存中获取/读取以及向缓存中写入/放入。不理想,会降低性能,因为它将是AppFabric缓存的包装器。

如果您还有任何问题,请不要犹豫。

谢谢你的帮助!

这种情况的一个可能的解决方案是,您可以创建一个包含所有业务逻辑和规则的服务(可能与数据库服务器一起驻留)来访问数据。而每个读通/写后提供者都会联系该服务来加载数据。这样,您就不需要在每台缓存服务器计算机上部署业务逻辑和相关程序集,并且可以同时使用读写功能。

对于缓存解决方案,您还可以查看NCache,它提供了读通、写后(异步)和写后(同步)功能,以及更可配置的选项,如在写后失败时的批写后操作和重试等。

最新更新