分布式
文章平均质量分 94
秃狼
VX:aitulang
展开
-
redis缓存问题
(通过hash函数计算出key对应的位置,如果有值就将对应位置改为1,在后续查询redis前先从布隆过滤器中查询数据是否存在),适合用来做判断不存在的操作。在查询数据库前需要获取锁,没有获取锁的请求会一直在重试,这样保证只有一条请求访问数据库,在该请求访问数据库后会将获得的信息重新存放到redis中,并将锁释放,在每次获取锁并访问数据库前还会再去redis中查询一次数据,这样就可以实现在第一个请求访问数据库后,后续的请求会直接从redis中查询出数据,解决了缓存击穿。原创 2023-10-24 12:04:30 · 388 阅读 · 0 评论 -
Caffeine的使用
运行反向代理服务器也就是负责反向代理到三个nginx的nginx,该nignx也负责前端页面的跳转。该nginx的conf为下:突出位置就是该nginx需要反向代理的其他nginx的IP和端口。在资源比较有限的时候我们通常不适用上述的机构,而是用使用Caffeine进行二级缓存,在Cffeine没有查找到数据,我们才会去redis中查询数据。原创 2023-09-10 21:38:02 · 1705 阅读 · 0 评论 -
redis集群
AOF全称为Append Only File(追加文件),通过创建AOF文件将在该数据库中执行的所有指令都记录到AOF文件中,通过AOF文件对数据进行恢复。,在该数据副本中进行增删改的操作,将页表中的关系映射到新的数据副本上。来映射在物理内存中的对应内存块,在执行RDB的子线程中通过相同的页表来读取对应映射的内存块,从而生成对应的RDB快照。通过对数据做快照的方式来实现持久化,将内存中的数据存储到磁盘中,在数据需要恢复的时候通过快照进行恢复。的情况,为了防止这种情况,真正的物理内存块设置了只读的权限。原创 2023-09-08 18:51:23 · 270 阅读 · 1 评论 -
RabbitMq深度学习
RabbitMQ是一个开源的消息队列中间件,它实现了高级消息队列协议(AMQP)。它被广泛用于分布式系统中的消息传递和异步通信。RabbitMQ提供了一种可靠的、可扩展的机制来传递消息,使不同的应用程序能够相互之间进行通信。它支持多种编程语言和平台,并且具有灵活的路由和队列配置选项。同步调用同步调用的优点:时效性较强,可以立即得到结果同步调用的问题:耦合度高性能和吞吐能力下降有额外的资源消耗有级联失败问题异步调用好处:吞吐量提升:无需等待订阅者处理完成,响应更快速。原创 2023-08-29 08:34:27 · 2157 阅读 · 0 评论 -
SpringCloud深度学习
微服务是一种架构风格,将一个大型应用程序拆分为一组小型、自治的服务。每个服务都运行在自己独立的进程中,使用轻量级的通信机制(通常是HTTP或消息队列)进行相互之间的通信。这种方式使得每个服务可以独立开发、部署和扩展,同时也降低了整个应用程序的复杂性。微服务架构可以提高系统的可伸缩性、灵活性和可维护性,使得团队可以更快地开发和交付新的功能。原创 2023-08-04 23:19:22 · 353 阅读 · 0 评论 -
kafka消息队列的初步探索
kafka 自动配置在KafkaAutoConfiguration原创 2023-06-22 14:31:02 · 1643 阅读 · 0 评论 -
ElasticSearch初步探索
ElasticSearch原创 2022-11-08 16:09:36 · 735 阅读 · 0 评论 -
springCloud 初探
分布式系统是若干个独立计算机的集合,这些计算机的集合,这些计算机对于用户来说就像单个相关系统。分布式系统是由一组通过网络进行通信,为了完成共同的任务而协调工作的计算机节点组成的系统。分布式系统的出现是为了用廉价的,普通的机器完成单个计算机无法完成的计算,存储任务。其目的是:利用更多的机器,处理更多的数据。定义: RPC是指远程过程调用,是一种进程间的通信方式,它是一种技术的思想,而不是规范。它允许程序调用另一个地址空间的过程或函数,而不是程序显式编码这个远程调用的细节。即程序员无论是调用本地还是远程的函数,原创 2022-06-14 11:37:00 · 599 阅读 · 2 评论