当前位置 : 主页 > 手机开发 > 其它 >

oop – DDD:缓存从服务器接收的聚合对象

来源:互联网 收集:自由互联 发布时间:2021-06-22
假设我有一个存储库(ContactsRepository),其方法类似于getAllContacts(userId). (ContactsRepository)从服务器获取所有数据.在第一次调用getAllContacts(userId)方法后,我想缓存这些数据.我的问题是我应该在
假设我有一个存储库(ContactsRepository),其方法类似于getAllContacts(userId).
(ContactsRepository)从服务器获取所有数据.在第一次调用getAllContacts(userId)方法后,我想缓存这些数据.我的问题是我应该在同一个(ContactsRepository)中实现缓存机制,当我再次调用getAllContacts(userId)方法时,存储库返回我的缓存数据,或者我需要将数据放到另一个地方(可能是存储库). 您可以使用Repository从缓存或数据库中获取数据.如果您的Repository类具有更新方法,您也可以有效地使缓存项无效.

因此,您可以在存储库中封装对缓存的访问:
http://martinfowler.com/eaaCatalog/repository.html

另一个为Repository实现缓存的例子:
http://ardalis.com/building-a-cachedrepository-via-strategy-pattern

网友评论