概述

Lcache最初是根据原公司redis组件需求的重构(Java),经过一年的线上上百个服务测试,已基本稳定。
GitHub:https://github.com/long172066912/lcache

redis组件支持

Jedis

  • 单节点直连方式,非线程安全,已禁止使用;
  • 单节点连接池方式,线程安全,可使用;
  • shard方式,未经过线上测试,谨慎使用;
  • 集群方式,未经过线上测试,谨慎使用;

Lettuce(默认使用)

  • 单节点连接方式,线程安全,默认使用;
  • 连接池方式,线程安全,可使用;
  • shard方式,不支持;
  • 集群模式,未经过线上测试,谨慎使用;
  • 集群连接池方式,未经过线上测试,谨慎使用;

    功能介绍

  1. 支持丰富的配置;
  2. 支持多种数据源,DB、Apollo、本地直连;支持动态配置
  3. Lcache支持非spring方式使用,也提供了lcache-spring包,支持spring的SpringCache原生注解与@Lcache注入方式;
  4. 支持Jedis发布订阅自动重试;
  5. 支持Lua脚本缓存自动化,并支持Lua脚本注入;
  6. 支持异步缓存操作;
  7. 支持分布式锁等复杂场景命令;
  8. 支持所有命令的多维度监控统计;
  9. 支持热key收集
  10. 支持分布式多级缓存(STRING、HASH、SET),并支持热key与自定义key多级缓存处理;

    整体架构

    image.png