图书管理系统-书籍信息与藏书信息缓存设计
2024-04-09 06:14:33 0 举报
书籍信息与藏书信息缓存设计的简要图示
作者其他创作
大纲/内容
book--key-101
book-item-page-key-1-10
1. 对书籍信息和藏书信息的所有 CURD 操作都受读写锁和互斥锁约束。2. 在新增或删除单条数据时会删除对应类别的所有分页查询缓存。数据访问层会维护一个存储分页查询缓存 Key 的集合,其使用一个互斥锁来保证其同步访问,配合缓存读写锁可保证集合数据的缓存双写一致性。3. 单条数据更新时,若缓存中有则更新缓存数据,无则只更新数据库数据。3. 在查询时会将对应的信息设置到缓存中,在下次查询且数据未被删除时会命中缓存。而对于分页查询缓存,若没有对应缓存则从数据库中查询之后再设置分页查询缓存 Key 与数据缓存 Key 的隐射,同时设置缓存中缺失的那部分数据 (使用 ValueOperations.setIfAbsent() 方法)。4. 分页查询缓存使用 ZSet 数据结构,数据信息缓存使用 String 数据结构。
书籍信息分页查询缓存
其他书籍信息 Key
book-item-key-202
编号 201 藏书信息
书籍信息缓存
book-item-key-101
book-item-key-201
编号 4 书籍信息
书籍信息缓存逻辑模型
book-item-key-102
编号 2 书籍信息
book-key-2
其他藏书信息缓存 Key
book-key-1
分页查询缓存
其他书籍信息缓存 Key
编号 5 书籍信息
book-key-4
藏书信息缓存数据模型
book-page-key-1-10
书籍信息缓存数据模型
编号 102 藏书信息
用例名称
book-key-3
编号 3 书籍信息
编号 1 书籍信息
藏书信息分页查询缓存
编号 202 藏书信息
其他书籍信息缓存 key 名称
编号 101 藏书信息
其他藏书信息
0 条评论
回复 删除
下一页