服务整体的可用性,需要方方面面来保证
服务可用性也是衡量系统的一个关键指标
看上图,系统自身我们要配置好入口处的限流、单机限流、cpu自适应限流,对下游做好超时熔断配置,并做好降级方案
通过监控报警发现和定位问题
通过一些演练,来提前模拟...
汪明鑫
2年前 (2023-03-29) 592浏览 0评论
0喜欢
一般来说线上一直在跑的业务需求的迭代无需特意预热,线上一般都有流量在跑
新的接口,但是在老的集群和服务,其实也不需要特意的预热
新接口新的集群服务,一般来说可以做些许的预热,但是一般来说其实功能放量的过程其实也是预热的过程,只不过使用线上的流量来进行预热的
什...
汪明鑫
2年前 (2023-03-29) 812浏览 0评论
1喜欢
之前记住这个图,就自认为理解了事务消息,然而在生产中真的用的事务消息时,发现还是有很多地方理解不到位的,这里再好好学习,深入理解一下。
RocketMQ可以帮助我们实现最终一致性
比如我们本地执行一个事务,然后还有一个其他系统的事务,我们想保证2个模...
汪明鑫
2年前 (2023-02-06) 578浏览 0评论
0喜欢
“影子”的概念在技术侧最早诞生于阿里的大促全链路压测
那我们先来聊下全链路压测
由于业务不断的架构升级,引入分布式微服务
传统的线下测试已经不能满足我们的测试需求了,因此需要全链路压测
一般需要压测平台,创建配置压测计划,对接口进行发压
这样的压测流...
汪明鑫
3年前 (2022-04-22) 1135浏览 0评论
3喜欢
缓存使用场景和心得
内存的诞生是为了弥补CPU和磁盘速度的不一致的问题
内存的价格都比磁盘要贵的多
CPU的多级缓存也是同理,把数据暂存于缓存,加速数据读取
在业务中我们也常常使用缓存做读写分离,写操作落db
读流量打到缓存,用缓存抗读流量,用了...
汪明鑫
3年前 (2022-04-22) 1505浏览 0评论
0喜欢
本文简单介绍分布式共识算法 Raft
Raft存在的目的是为了解决分布式集群下数据不一致的问题
Raft主要有2个流程:
1)选主
2)数据同步
Raft集群节点身份见下图 网上扒的,比较清晰,
大概就是候选人,获得多数投票成为leader, 发现更高...
汪明鑫
3年前 (2022-04-22) 525浏览 0评论
0喜欢
Map Reduce
为了整个系统的吞吐量,做到分片多实例并行处理
异步化
主要包含几个方面,一来是通过消息队列做削峰和解藕,可以把非核心逻辑异步化,避免同步接口等待耗时过长
还可以理解通过定时任务实现异步扫库表驱动
这里也可以理解起多线程异步并行处理
&n...
汪明鑫
3年前 (2022-03-28) 567浏览 0评论
1喜欢
XXL-JOB 是基于mysql的分布式任务调度系统,是中心化调度的,包括调度中心和执行器
调度中心负责调度任务,执行器接受调度执行任务
执行器会注册到调度中心,调度中心也有自己的后台可以配置执行器配置任务,可以小流量调试任务,可以随开随停任务。
调度中心支持多节点...
汪明鑫
3年前 (2021-12-28) 1086浏览 0评论
4喜欢
Elastic Job实践
在上篇文章,我准备了ZK环境、Mysql环境,跑了Spring Boot整合Elastic Job的例子
今天从原理和源码层面更进一步学习Elastic Job, Elastic Job依赖ZK注册任务信息、任务实例,并且会把任务对应的分片也存储在...
汪明鑫
3年前 (2021-12-27) 616浏览 0评论
0喜欢
直接开始搞
mkdir zk
cd zk
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz
tar -zxvf zookeeper-3.4.9.tar....
汪明鑫
3年前 (2021-12-03) 552浏览 0评论
0喜欢