Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/bafuka/HotArmor
/ types & classes
Types & classes
68 in github.com/bafuka/HotArmor
⨍
Functions
307
◇
Types & classes
68
Class
BroadcastMessage
广播消息包装类 用于区分不同类型的广播操作
hotarmor-core/src/main/java/cn/bafuka/hotarmor/consistency/BroadcastMessage.java:14
Interface
BroadcastNotifier
广播通知器接口 基于 Redis Pub/Sub,通知所有集群节点清理本地缓存或晋升热点
hotarmor-core/src/main/java/cn/bafuka/hotarmor/consistency/BroadcastNotifier.java:9
Interface
CacheEngine
缓存引擎核心接口 定义了缓存的基本操作,支持泛型 @param <K> 缓存键类型 @param <V> 缓存值类型
hotarmor-core/src/main/java/cn/bafuka/hotarmor/core/CacheEngine.java:10
Class
CacheStats
缓存统计信息
hotarmor-core/src/main/java/cn/bafuka/hotarmor/core/CacheStats.java:11
Class
CaffeineL1CacheEngine
L1 本地缓存引擎实现 基于 Caffeine 的高性能本地缓存 @param <V> 缓存值类型
hotarmor-core/src/main/java/cn/bafuka/hotarmor/dataplane/impl/CaffeineL1CacheEngine.java:19
Class
CaffeineL1CacheEngineTest
CaffeineL1CacheEngine 单元测试
hotarmor-core/src/test/java/cn/bafuka/hotarmor/dataplane/CaffeineL1CacheEngineTest.java:17
Class
CaffeineL2NoiseFilter
L2 噪音过滤器实现 基于轻量级计数器,过滤冷门长尾流量,保护 Sentinel
hotarmor-core/src/main/java/cn/bafuka/hotarmor/dataplane/impl/CaffeineL2NoiseFilter.java:19
Class
CaffeineL2NoiseFilterTest
CaffeineL2NoiseFilter 单元测试
hotarmor-core/src/test/java/cn/bafuka/hotarmor/dataplane/CaffeineL2NoiseFilterTest.java:14
Interface
ConfigSource
配置源 SPI 接口 用于对接不同的配置中心(Nacos、Apollo、Etcd 等) 实现类需要在 META-INF/services 目录下注册
hotarmor-core/src/main/java/cn/bafuka/hotarmor/spi/ConfigSource.java:14
Class
ConsistencyConfig
一致性配置
hotarmor-core/src/main/java/cn/bafuka/hotarmor/model/HotArmorRule.java:173
Interface
ConsistencyManager
一致性管理器接口 协调延迟双删和广播通知,保证数据一致性
hotarmor-core/src/main/java/cn/bafuka/hotarmor/consistency/ConsistencyManager.java:9
Class
DefaultConsistencyManager
一致性管理器默认实现 协调延迟双删和广播通知
hotarmor-core/src/main/java/cn/bafuka/hotarmor/consistency/impl/DefaultConsistencyManager.java:24
Class
DefaultHotArmorAspectHandler
HotArmor 切面处理器默认实现 执行三级漏斗逻辑
hotarmor-core/src/main/java/cn/bafuka/hotarmor/aspect/impl/DefaultHotArmorAspectHandler.java:20
Class
DefaultHotArmorAspectHandlerTest
DefaultHotArmorAspectHandler 单元测试 测试核心的四级漏斗业务逻辑
hotarmor-core/src/test/java/cn/bafuka/hotarmor/aspect/DefaultHotArmorAspectHandlerTest.java:25
Class
DefaultRuleManager
规则管理器默认实现 负责规则的加载、更新、比对和生效
hotarmor-core/src/main/java/cn/bafuka/hotarmor/control/impl/DefaultRuleManager.java:22
Class
DefaultSpelExpressionParser
SpEL 表达式解析器默认实现 基于 Spring Expression Language
hotarmor-core/src/main/java/cn/bafuka/hotarmor/spel/DefaultSpelExpressionParser.java:20
Class
DefaultSpelExpressionParserTest
DefaultSpelExpressionParser 单元测试 主要测试 SpEL 表达式解析的正确性和安全性
hotarmor-core/src/test/java/cn/bafuka/hotarmor/spel/DefaultSpelExpressionParserTest.java:20
Interface
DelayedDeleteConsumer
延迟删除消费者接口 负责消费延迟消息,执行第二次删除
hotarmor-core/src/main/java/cn/bafuka/hotarmor/consistency/DelayedDeleteConsumer.java:9
Interface
DelayedDeleteProducer
延迟双删生产者接口 负责在数据更新时,发送延迟消息以保证最终一致性
hotarmor-core/src/main/java/cn/bafuka/hotarmor/consistency/DelayedDeleteProducer.java:9
Class
DiagnosticController
诊断控制器 用于查看 HotArmor 的运行状态和配置
hotarmor-example/src/main/java/cn/bafuka/hotarmor/example/controller/DiagnosticController.java:23
Class
HotArmorAspect
HotArmor AOP 切面 拦截 @HotArmorCache 和 @HotArmorEvict 注解
hotarmor-core/src/main/java/cn/bafuka/hotarmor/aspect/HotArmorAspect.java:17
Interface
HotArmorAspectHandler
HotArmor 切面处理器接口 负责拦截注解方法,执行缓存逻辑
hotarmor-core/src/main/java/cn/bafuka/hotarmor/aspect/HotArmorAspectHandler.java:10
Class
HotArmorAutoConfiguration
HotArmor 自动配置类
hotarmor-core/src/main/java/cn/bafuka/hotarmor/autoconfigure/HotArmorAutoConfiguration.java:46
Class
HotArmorConfigInitializer
配置源初始化器(内部类)
hotarmor-core/src/main/java/cn/bafuka/hotarmor/autoconfigure/HotArmorAutoConfiguration.java:240
Class
HotArmorContext
HotArmor 上下文信息 用于在执行链路中传递请求上下文
hotarmor-core/src/main/java/cn/bafuka/hotarmor/core/HotArmorContext.java:12
Class
HotArmorExampleApplication
HotArmor 示例应用启动类
hotarmor-example/src/main/java/cn/bafuka/hotarmor/example/HotArmorExampleApplication.java:10
Class
HotArmorLoadException
HotArmor 加载异常 当从数据库或外部数据源加载数据失败时抛出 @author HotArmor Team @since 1.0
hotarmor-core/src/main/java/cn/bafuka/hotarmor/exception/HotArmorLoadException.java:12
Class
HotArmorProperties
HotArmor 配置属性 从 application.yml 读取配置
hotarmor-core/src/main/java/cn/bafuka/hotarmor/config/HotArmorProperties.java:14
Class
HotArmorRule
热点规则配置 对应控制平面的核心配置模型
hotarmor-core/src/main/java/cn/bafuka/hotarmor/model/HotArmorRule.java:14
Class
InternalMessageListener
内部消息监听器
hotarmor-core/src/main/java/cn/bafuka/hotarmor/consistency/impl/RedisBroadcastNotifier.java:163
Interface
InvalidationListener
缓存失效监听器接口 当收到广播消息时,清理本地缓存
hotarmor-core/src/main/java/cn/bafuka/hotarmor/consistency/InvalidationListener.java:9
Class
L1CacheConfig
L1 本地缓存配置
hotarmor-core/src/main/java/cn/bafuka/hotarmor/model/HotArmorRule.java:53
Interface
L1CacheEngine
L1 本地缓存引擎接口 基于 Caffeine 实现的高性能本地缓存 @param <V> 缓存值类型
hotarmor-core/src/main/java/cn/bafuka/hotarmor/dataplane/L1CacheEngine.java:11
Class
L2FilterConfig
L2 噪音过滤器配置
hotarmor-core/src/main/java/cn/bafuka/hotarmor/model/HotArmorRule.java:86
Interface
L2NoiseFilter
L2 噪音过滤器接口 基于轻量级计数器,过滤冷门长尾流量,保护 Sentinel
hotarmor-core/src/main/java/cn/bafuka/hotarmor/dataplane/L2NoiseFilter.java:9
Class
L3HotspotConfig
L3 热点探测器配置(基于 Sentinel)
hotarmor-core/src/main/java/cn/bafuka/hotarmor/model/HotArmorRule.java:113
Interface
L3HotspotDetector
L3 热点探测器接口 基于 Sentinel 的热点参数流控,精确判定是否触发热点降级
hotarmor-core/src/main/java/cn/bafuka/hotarmor/dataplane/L3HotspotDetector.java:9
Class
L4LoaderConfig
L4 安全回源器配置
hotarmor-core/src/main/java/cn/bafuka/hotarmor/model/HotArmorRule.java:140
Interface
L4SafeLoader
L4 安全回源器接口 提供防击穿的数据加载能力,支持从 Redis 和 DB 回源 @param <V> 数据类型
hotarmor-core/src/main/java/cn/bafuka/hotarmor/dataplane/L4SafeLoader.java:13
Enum
LoadFailureReason
加载失败原因枚举
hotarmor-core/src/main/java/cn/bafuka/hotarmor/exception/HotArmorLoadException.java:43
Class
LocalCacheInvalidationListener
本地缓存失效监听器 当收到广播消息时,清理 L1 本地缓存
hotarmor-core/src/main/java/cn/bafuka/hotarmor/consistency/impl/DefaultConsistencyManager.java:272
Class
LocalCachePromotionListener
本地缓存晋升监听器 当收到热点晋升广播时,将热点数据晋升到 L1 本地缓存
hotarmor-core/src/main/java/cn/bafuka/hotarmor/consistency/impl/DefaultConsistencyManager.java:295
Class
LocalYamlConfigSource
本地 YAML 配置源实现 从 Spring Boot 配置文件读取规则
hotarmor-core/src/main/java/cn/bafuka/hotarmor/spi/impl/LocalYamlConfigSource.java:16
Class
MessageListener
RocketMQ 消息监听器(内部类) 需要在 Spring Boot 自动配置中注册
hotarmor-core/src/main/java/cn/bafuka/hotarmor/consistency/impl/RocketMQDelayedDeleteConsumer.java:83
Enum
MessageType
消息类型枚举
hotarmor-core/src/main/java/cn/bafuka/hotarmor/consistency/BroadcastMessage.java:39
Class
NacosConfigSource
Nacos 配置源适配器实现 支持动态配置热更新
hotarmor-core/src/main/java/cn/bafuka/hotarmor/spi/impl/NacosConfigSource.java:21
Class
NacosListener
Nacos 监听器实现
hotarmor-core/src/main/java/cn/bafuka/hotarmor/spi/impl/NacosConfigSource.java:175
Class
Product
商品实体
hotarmor-example/src/main/java/cn/bafuka/hotarmor/example/entity/Product.java:18
Class
ProductController
商品控制器
hotarmor-example/src/main/java/cn/bafuka/hotarmor/example/controller/ProductController.java:16
Interface
ProductMapper
商品 Mapper
hotarmor-example/src/main/java/cn/bafuka/hotarmor/example/mapper/ProductMapper.java:10
Class
ProductService
商品服务 演示 HotArmor 对高并发场景的支持
hotarmor-example/src/main/java/cn/bafuka/hotarmor/example/service/ProductService.java:18
Interface
PromotionListener
热点晋升监听器接口 用于处理其他节点发送的热点晋升广播
hotarmor-core/src/main/java/cn/bafuka/hotarmor/consistency/PromotionListener.java:9
Class
RedisBroadcastNotifier
广播通知器实现 基于 Redis Pub/Sub
hotarmor-core/src/main/java/cn/bafuka/hotarmor/consistency/impl/RedisBroadcastNotifier.java:20
Class
RedisConfig
Redis 配置类
hotarmor-example/src/main/java/cn/bafuka/hotarmor/example/config/RedisConfig.java:17
Class
RedissonL4SafeLoader
L4 安全回源器实现 基于 Redisson 分布式锁,防止缓存击穿 @param <V> 数据类型
hotarmor-core/src/main/java/cn/bafuka/hotarmor/dataplane/impl/RedissonL4SafeLoader.java:23
Class
RedissonL4SafeLoaderTest
RedissonL4SafeLoader 单元测试 测试分布式锁和安全回源逻辑
hotarmor-core/src/test/java/cn/bafuka/hotarmor/dataplane/RedissonL4SafeLoaderTest.java:25
Class
RocketMQDelayedDeleteConsumer
延迟删除消费者实现 监听 RocketMQ 延迟消息,执行第二次删除
hotarmor-core/src/main/java/cn/bafuka/hotarmor/consistency/impl/RocketMQDelayedDeleteConsumer.java:16
Class
RocketMQDelayedDeleteProducer
延迟双删生产者实现 基于 RocketMQ 的延迟消息
hotarmor-core/src/main/java/cn/bafuka/hotarmor/consistency/impl/RocketMQDelayedDeleteProducer.java:14
Interface
RuleChangeListener
规则变更监听器接口 当规则发生变更时,由 RuleManager 触发回调
hotarmor-core/src/main/java/cn/bafuka/hotarmor/control/RuleChangeListener.java:9
Interface
RuleManager
规则管理器接口 核心大脑,负责规则的加载、更新、比对和生效
hotarmor-core/src/main/java/cn/bafuka/hotarmor/control/RuleManager.java:11
Class
SentinelL3HotspotDetector
L3 热点探测器实现 基于 Sentinel 热点参数流控
hotarmor-core/src/main/java/cn/bafuka/hotarmor/dataplane/impl/SentinelL3HotspotDetector.java:24
Interface
SpelExpressionParser
SpEL 表达式解析器接口 用于解析注解中的 SpEL 表达式
hotarmor-core/src/main/java/cn/bafuka/hotarmor/spel/SpelExpressionParser.java:9
Class
TestService
测试服务类
hotarmor-core/src/test/java/cn/bafuka/hotarmor/spel/DefaultSpelExpressionParserTest.java:279
Class
TestUser
测试用户类
hotarmor-core/src/test/java/cn/bafuka/hotarmor/spel/DefaultSpelExpressionParserTest.java:255
Class
User
用户实体
hotarmor-example/src/main/java/cn/bafuka/hotarmor/example/entity/User.java:17
Class
UserController
用户控制器
hotarmor-example/src/main/java/cn/bafuka/hotarmor/example/controller/UserController.java:16
Interface
UserMapper
用户 Mapper
hotarmor-example/src/main/java/cn/bafuka/hotarmor/example/mapper/UserMapper.java:10
Class
UserService
用户服务 演示 HotArmor 的使用
hotarmor-example/src/main/java/cn/bafuka/hotarmor/example/service/UserService.java:18