- 博客(8)
- 收藏
- 关注
原创 常见微服务通信方案(详细)
微服务通信远程调用技术特指后端不同服务器之间的调用,例如在A服务的api中调用B服务的api。目前主流的技术有基于Http的RestFul API和基于TCP的RPC协议。
2024-10-17 21:31:11
2001
原创 Redis实现分布式锁
Redis本身可以被多个客户端共享访问,正好就是一个共享存储系统,可以用来保存分布式锁,而且Redis的读写性能很高,可以应对高并发的锁操作场景。在Redis中,SETNX命令可以帮助我们实现互斥,它可以实现Key不存在才插入,所以可以通过它来实现分布式锁
2024-10-16 22:59:18
1679
原创 Redis内存淘汰策略详解
如果应用主要是读操作,那么考虑使用基于LRU或LFU的淘汰策略,因为这些策略会保留频繁访问的数据。:如果应用中存在一些热点数据(即经常被访问的数据),那么使用基于LRU或LFU的淘汰策略可能更适合,因为它们会保留这些热点数据。:如果数据经常更新,那么使用基于volatile的淘汰策略可能更合适,因为这些策略会考虑数据的过期时间和访问频率。:如果系统内存资源有限,且对性能要求较高,那么需要谨慎选择淘汰策略,以避免因内存不足而导致的写操作失败或性能下降。Redis的内存使用是有限制的,可以通过配置参数。
2024-10-13 19:37:18
1840
原创 Redis企业级解决方案(缓存击穿,缓存雪崩,缓存穿透)
用户的数据一般都存在数据库当中,数据库的数据是存在磁盘上的,磁盘的读写速度是非常慢的,如果用户的请求都访问数据库的话,在高并发场景下,大量的请求数据库很容易就崩溃了,为了避免用户直接访问数据库,就会用Redis做缓存,用户发来请求会先访问缓存,缓存中有就直接返回结果,缓存中没有再去查数据库,并且将数据存入缓存当中。因为Redis的数据存在内存当中,读写速度非常快,大大提高了系统性能。
2024-10-13 19:34:47
773
原创 SpringBoot自动装配原理
Spring Boot 的自动配置功能旨在根据项目中的类路径、配置文件、环境变量等因素,自动地配置Spring框架的相关组件。这意味着开发者在大多数情况下不需要手动编写大量的配置代码,Spring Boot 会根据已有的约定自动完成这些配置。
2024-10-06 18:29:10
939
原创 Elasticsearch倒排索引
正排索引是一种直接通过文档ID(或文档标识)来访问文档内容的索引方式。在正排索引中,每个文档都有一个唯一的标识符,通过这个标识符可以直接定位到文档本身。例如:结构简单:逻辑上类似于数据库中的主键索引。更新困难:当文档更新时,可能需要更新整个文档的索引条目。倒排索引是一种通过单词(或短语)快速定位到包含这些内容的文档列表的索引方式。它是基于内容的单词或短语来组织的,每个单词都对应一个倒排列表(Posting List),列出了包含该单词的所有文档的位置信息。如图:高效搜索:非常适合于全文搜索,可以快速检索包含
2024-09-29 21:28:17
429
原创 SpringBean生命周期
在Spring中,Bean是Java对象,这些对象由Spring IoC容器实例化、组装和管理。Bean的定义可以通过XML配置文件、注解(如@Component@Service等)或Java配置类(使用@Bean注解的方法)来完成。Spring Bean的生命周期从Bean的创建开始,经历一系列的初始化过程,直到最终被销毁。实例化属性赋值BeanName设置BeanFactoryAware接口回调BeanClassLoaderAware接口回调BeanNameAware接口回调。
2024-09-22 14:46:44
897
原创 Spring循环依赖
循环依赖,也被称为循环引用,指的是在Spring容器中的两个或多个Bean之间存在直接或间接的依赖关系,构成了一个闭环。例如,UserDao依赖于UserService,而UserService又依赖于UserDao,就形成了一个简单的循环依赖。在更复杂的场景中,还可能存在多个Bean之间的间接依赖,最终形成一个闭环。
2024-09-17 11:56:40
814
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人