摘要:
参考:https://blog.csdn.net/yuanyuan_gugu/article/details/107336264 一、Ribbon 客户端负载均衡组件Ribbon,它是基于 Netflix Ribbon 实现的一套客户端负载均衡的工具; Ribbon主要功能是提供客户端的软件负载均衡 阅读全文
摘要:
一、nacos的领域模型划分 1、 namespace (1)namespace可以进行资源隔离,默认为“public";例如:dev环境的 namespace下的服务是调用不到 prod 的 namespace下的服务; 可以在 ”命名空间“ 管理,如下: (2) namespace 的要在配置文 阅读全文
摘要:
一、服务的注册中心 自己设计一个服务的注册中心 (1)注册:服务启动的时候将服务信息注册到注册中心;(insert) (2)心跳:服务内部的定时任务 Timer1 定时发送心跳给注册中心,更新 last_heatTime 字段;(update) (3)服务间调用:因为 Timer2 定时从注册中心获 阅读全文
摘要:
文档: https://github.com/alibaba/spring-cloud-alibaba/blob/master/README-zh.md 一、spring cloud alibaba的介绍 1、spring cloud 和 spring cloud alibaba的关系 2、Spri 阅读全文
摘要:
转载自: https://blog.51cto.com/10950710/2116406 阅读全文
摘要:
rabbitmq是通过elang语言来开发的基于amqp协议,它是一个开源的消息代理和队列服务器,通过普通的协议(Amqp协议)来完成不同应用之间的数据共享。 一、RabbitMQ的安装 安装指导参考:https://www.cnblogs.com/sky-cheng/p/10709104.html 阅读全文
摘要:
一、Redis的缓存设计不合理会存在的问题 Redis作为缓存,但是缓存设计的不合理就会有以下的问题: 缓存穿透 缓存击穿 缓存雪崩 缓存穿透 缓存穿透是指查询一个根本不存在的数据,缓存层不会命中,大量的请求全部落到数据库存储层上,严重时造成数据库挂掉。 通常是出于容错的考虑,如果从存储层查询不到的 阅读全文
摘要:
一、分布式锁 分布式锁一般有三种实现方式:1. 数据库乐观锁;2. 基于Redis的分布式锁;3. 基于ZooKeeper的分布式锁。本篇博客将介绍第二种方式,基于Redis实现分布式锁。 二、分布式锁的演进 业务:电商网站卖东西需要去减库存,本篇文章假设下的订单数量都为1; 第1版的代码: @Se 阅读全文
摘要:
Redis的lua脚本 Redis在2.6推出了脚本功能,允许开发者使用 Lua 语言编写脚本传到 Redis 中执行。 1、使用lua脚本的优点: (1)减少网络开销:多次网络请求的操作,可以用一个请求完成,原先多次请求的逻辑放在redis服务器上完成。使用脚本,减少了网络往返时延。 (2)原子操 阅读全文
摘要:
Redis 集群的扩容步骤: (1)master: 启动扩容的实例; 使用 add-node 命令,将Redis实例添加到集群中; 使用 reshard 命令,给新增加的实例分配 slot; (2)slave: 启动扩容的实例; 使用 cluster replicate 命令,将 slave 添加到 阅读全文