Caching 缓存缓存层中的所有实体并与数据库同步
是否有可能、可靠且安全地将所有实体缓存在分布式缓存中,并在更新时通知dao层?我可能的想法是Caching 缓存缓存层中的所有实体并与数据库同步,caching,model-view-controller,Caching,Model View Controller,是否有可能、可靠且安全地将所有实体缓存在分布式缓存中,并在更新时通知dao层?我可能的想法是 使用JPA2.1和Hibernate实现 创建持久化数据库时 持久化后,将其缓存到分布式缓存 将所有读取操作运河化到缓存 更新时通知dao层更新实体 是的,您可以设计一个 添加时:将数据持久化到数据库并添加到缓存 读取时:从缓存中读取数据,并将缓存未命中视为未命中 也存在于数据库中 更新时:更新数据库中的数据,然后更新缓存中的数据(反之亦然) 反之亦然) 删除时:从缓存中删除数据,然后从数据库中删除
- 使用JPA2.1和Hibernate实现
- 创建持久化数据库时
- 持久化后,将其缓存到分布式缓存
- 将所有读取操作运河化到缓存
- 更新时通知dao层更新实体
- 添加时:将数据持久化到数据库并添加到缓存
- 读取时:从缓存中读取数据,并将缓存未命中视为未命中 也存在于数据库中
- 更新时:更新数据库中的数据,然后更新缓存中的数据(反之亦然) 反之亦然)
- 删除时:从缓存中删除数据,然后从数据库中删除
- 当数据库(持久化)中存在数据时,可能会遇到缓存未命中 但尚未缓存)
- 您可能会从缓存中获取过时数据(已在db中更新,但尚未更新) 在缓存中)
- 另外,如果数据被其他应用程序从数据库中删除,则它将被删除
仍将缓存在分布式缓存中(上的无效数据
阅读)