![]() |
Java开发网 |
注册 |
登录 |
帮助 |
搜索 |
排行榜 |
发帖统计
|
您没有登录 |
» Java开发网 » 高性能Java数据库缓存
![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() ![]() |
作者 | 列表缓存的树状存储办法 |
liuaike
![]() 版主 ![]() 发贴: 20 ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() 只是提出思路,自己没有实现。 本人思索用树状结构改善缓存命中率的办法,这种缓存办法命中率更高,也不需要遍历,所以性能上不会太差,但是每个列表可能需要多从HashMap里get几次。基本思路如下:假设一个对象O.java包含A、B、C、D四个域,对应的表T包含a、b、c、d四个字段。那么对T表的任何查询都会包含abcd四个条件中的若干个,如查询条件是“等于”的则都做散列,如果查询条件不是“等于”的则全放在一起。那么最后缓存的树状结构如下,用遍历即可实现要删除的节点。 凡是不确定的条件查询(如<,>,like等都放入到other这个Map中),可能有点抽象,但这种缓存命中率更高,如下图。 ![]() (缩略图,点击图片链接看原图) 都2021年了,这是准备一年只发一个贴的节奏么?弄个微信群腐败活动起来啊! |
![]() ![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() |
![]() |
![]() |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |