摘要:
前言 随着微服务的流行,服务和服务之间的依赖越来越强,调用关系越来越复杂,服务和服务之间的稳定性越来越重要。在遇到突发的请求量激增,恶意的用户访问,亦或请求频率过高给下游服务带来较大压力时,我们常常需要通过缓存、限流、熔断降级、负载均衡等多种方式保证服务的稳定性。 为什么要限流 限流顾名思义,就是对 阅读全文
摘要:
Sentinel Sentinel控制台安装 下载sentinel-dashboard-1.8.0.jar 在cmd中运行下面的命令 java -Dserver.port=8080 -Dcsp.sentinel.dashboard.server=localhost:8080 -Dproject.na 阅读全文
摘要:
Nacos客户端的数据的加载流程 Nacos的外部化配置的实现? NacosPropertySourceLocator。 Spring cloud Nacos配置的加载 Spring Cloud Nacos配置变更 @RefreshScope - Spring Cloud中提供的能力,在Spring 阅读全文
摘要:
PropertySourceLocator加载原理 SpringApplication.run 在spring boot项目启动时,有一个prepareContext的方法,它会回调所有实现了ApplicationContextInitializer的实例,来做一些初始化工作。 public Con 阅读全文
摘要:
提高系统性能首先考虑的是数据库的优化,但是数据库因为历史原因,横向扩展是一件非常复杂的工程,所有我们一般会尽量把流量都挡在数据库之前。 不管是无限的横向扩展服务器,还是纵向阻隔到达数据库的流量,都是这个思路。阻隔直达数据库的流量,缓存组件和消息组件是两大杀器。 1. MQ简介 MQ:Message 阅读全文
摘要:
Kafka Kafka架构由broker和zookeeper组成,如下图: 注意:Kafka2.8版本可以不依赖Zookeeper独立运行了 Pulsar Pulsar的架构如下: Pulsar Broker会在本地缓存消息,并且支持TTL(消息的存活时间) 从上面的2个架构我们看到,Kafka和P 阅读全文
摘要:
发布订阅模式又叫观察者模式,它定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖他的对象都将得到通知。 RocketMQ的消息订阅分为两种模式: Push模式(MQPullConsumer): Broker 主动向消费者推送。 Pull模式(MQPushConsumer): 消费 阅读全文
摘要:
有序消息 有序消息又叫顺序消息(FIFO消息) 是指消息的消费顺序和生产顺序相同,在有些业务逻辑下,必须保证顺序。 比如订单的生成、付款、发货,这个消息必须按照顺序处理才行。 顺序消息分为全局顺序和分区顺序 全局顺序 一个Topic内所有的消息都发送到同一个queue,按照先进先出的顺序进行发布和消 阅读全文
摘要:
批量消息 为什么使用批量消息? 在很多调优的时候,比如数据库批量处理,有些请求进行合并发送等都是类似批量的实现 RocketMQ 批量发送也是为了追求性能,特别在消息数量特别大的时候,批量效果就非常明显 使用批量消息的限制? 同一批次的消息应该具有相同主题、相同的消息配置 不支持延迟消息 建议一个批 阅读全文
摘要:
一、单实例安装&启动 下载rocketmq安装包: cd /opt/soft # 下载二进制安装包 wget https://archive.apache.org/dist/rocketmq/4.7.1/rocketmq-all-4.7.1-bin-release.zip # 如果没有安装 unzi 阅读全文