RefreshScope注解位于spring-cloud-context,可将Bean注解定义放入org.springframework.cloud.context.scope.refresh.RefreshScope中
nacos 动态配置机制
nacos客户端会循环请求服务端变更的数据,并且超时时间设置为30s,当配置发生变化时,请求的响应会立即返回,否则会一直等到 29.5s+ 之后再返回响应。nacos 客户端能够实时感知到服务端配置发生了变化,实时感知是建立在客户端拉和服务端推的基础上。
SPI机制
SPI,全称为 Service Provider Interface,是一种服务发现机制。它通过在ClassPath路径下的`META-INF/services`文件夹查找文件,自动加载文件里所定义的类
Spring Boot启动过程及自动装配原理
Spring Boot自动装配依赖@SpringBootApplication注解,该注解对应由@SpringBootConfiguration、@EnableAutoConfiguration、@ComponentScan组成
Redis 字典
dict 描述一个字典,其中的 dictht 描述哈希表,其中的 dictEntry 描述键值对结构
Redis LRU机制
Redis系统的LRU算法在淘汰数据时, 使用的是一种近似算法,并不是严格的按照访问时间进行缓存数据的淘汰
Redis lazyFree机制
lazyfree的原理就是在删除对象时只是进行逻辑删除,然后把对象丢给后台,让后台线程去执行真正的destruct,避免由于对象体积过大而造成阻塞
Redis Stream
Redis Stream提供了消息的持久化和主备复制功能,可以让任何客户端访问任何时刻的数据,并且能记住每一个客户端的访问位置,还能保证消息不丢失
Redis管道-Pipeline
Pipeline管道机制不单单是为了减少RTT的一种方式,在使用Pipeline的情况下,通常使用单个read()系统调用读取许多命令,然后使用单个write()系统调用返回多个响应结果,这样就提高了QPS
基于Redis Bloom Filter 实现防止缓存穿透
利用布隆过滤器我们可以预先把数据查询的主键,比如用户ID或文章ID缓存到过滤器中。当根据ID进行数据查询的时候,我们先判断该ID是否存在,若存在的话,则进行下一步处理