缓存热点,缓存穿透,终极解决方案看过来
背景
解决方案
碰到的问题
Hotkey虽然开源,但是相关client jar包并未上传中央仓库,dashboard和worker启动包也并未提供下载。需要下载源码进行编译,编译过程中也碰到一些包依赖的问题。
Hotkey的client jar只提供了api级别的方法供程序使用,如果要落地到业务项目中,需要大规模的修改代码才能实施。
public interface ProductService{
SkuInfo getSkuInfo(String skuCode);
}
Hotlink客户端
业务接入简单,只需要一个标注,1分钟就能使你的RPC接口接入热点探测框架
启动时动态扫描所有Hotlink标注的接口,创建动态代理
基于动态代理去对接口做增强,理论上只要有接口,就支持任何RPC框架
本地方法只要有接口,也能使用热点探测
Hotlink如何使用
<dependency>
<groupId>com.thebeastshop</groupId>
<artifactId>hotlink-spring-boot-starter</artifactId>
<version>1.0.12</version>
</dependency>
<fastjson.version>1.2.70</fastjson.version>
<guava.version>29.0-jre</guava.version>
#此app-name不配置的话,会优先读取spring.application.name属性
hotlink.app-name=test
#etcd地址和端口
hotlink.etcd-url=http://xxx.xxx.xxx.xxx:2379
@Hotlink
public interface ProductService{
@Hotlink
SkuInfo getSkuInfo(String skuCode);
}
使用Hotlink需要注意的事项
接口层面上标注@Hotlink
相关实现会被注入Spring上下文中
关注公众号:拾黑(shiheibook)了解更多
赞助链接:
关注数据与安全,洞悉企业级服务市场:https://www.ijiandao.com/
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/
关注网络尖刀微信公众号
随时掌握互联网精彩
随时掌握互联网精彩
- 亿欧智库重磅发布《2022中国信创产业竞争力研究报告》
- 国内首款2K高频PWM柔性屏量产下线
- 【杂谈快报】特斯拉回应上海工厂将主动减产20%:不实消息,用交付量说话;亚马逊对中高层下手,裁员人数上升至20000名...
- 【大公司创新情报】宁德时代“变身”洛阳钼业二股东,锁定新能源战略金属资源链
- 专访项曙明:混源开发模式已成主流,直面挑战解决合规难题
- 本周大新闻|苹果AR/VR指套专利暗藏玄机,Pico在美国展开规模化招聘
- 核酸检测撑起一个IPO,一年营收17亿,市值37亿
- 组合式应用新利器,事件网格“出圈”!
- 看了 Build 大会还不过瘾?那这场技术主题趴你一定要来
- 【周末荐书】销声匿迹: 数字化工作的真正未来
- 涨幅超4倍跻身“千元股”行列,石头科技还能“疯狂”多久?
- 统信UOS适配百度飞桨AI平台:稳!
赞助链接