1

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

Read-Through/Write-Behind 似乎是一个好方法。但是如何为真正的业务解决方案实施它?我看到的每个示例都使用 ADO.NET 的简单查询来加载数据。在我们的例子中,加载数据是业务相关的,并且会涉及到许多程序集和交互。将我们所有的业务部署到每个缓存主机上似乎不是一个好的解决方案。

另一种方法是每个域都有一个独特的服务,负责从缓存中获取/读取和写入/放入缓存。不理想并且会降低性能,因为它将成为 AppFabric 缓存的包装器。

如果您还有其他问题,请不要犹豫。

感谢帮助 !

4

1 回答 1

0

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

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

于 2014-12-29T18:49:28.953 回答