除非你觉得你的时间不是很宝贵,否则不要看这篇流水账式的博文,这只是篇个人的工作的学习一个总结而已,没有包含任何的技术细节
阅读全文 »

除非你觉得你的时间不是很宝贵,否则不要看这篇流水账式的博文,这只是篇个人的工作的学习一个总结而已,没有包含任何的技术细节
阅读全文 »

除非你觉得你的时间不是很宝贵,否则不要看这篇流水账式的博文,这只是篇个人的工作的学习一个总结而已,没有包含任何的技术细节
阅读全文 »

0. 背景

临近双11,公司对所有的接口都使用阿里云的全链路压测工具做压测,比如首页的 TPS 是3000,支付的 TPS 是 60,根据不同的接口做不同的策略。其中数值是根据平时的5倍计算得出的。
这篇博文就是使用阿里云的 arms 监控(APM的一种,类似 skywalking,可以查看请求的每个链路)以及 PTS(做压测的一种工具)对两次压测的优化总结。

待拆解项目机器集群A:48台,配置为4核8G
本项目机器集群B:6台,配置为4核8G
由于压测时正在在拆解服务中,因此大部分接口在A集群中。
A 集群20%的接口通过 RPC 请求到 B,80%的接口通过发送消息跟 B 交互。
数据库配置:1写5读,配置较高,只在主库操作。在压测过程中主库 CPU 基本属于较为稳定。
ONS:发送、接收消息总 TPS 为 5000,在压测过程中基本还未达到该阈值。总 TPS 稳定在 40(即发、接消息各20)。
Redis:4G两节点,不是瓶颈。
第三方请求接口主要有:支付的请求下单、通知回调、银行卡四要素验证等。

阅读全文 »

除非你觉得你的时间不是很宝贵,否则不要看这篇流水账式的博文,这只是篇个人的工作的学习一个总结而已,没有包含任何的技术细节
阅读全文 »

0. 背景

最近因为项目需要,需要基于 Dubbo 增加一个 filter,拦截所有的 RPC 请求,打印出请求的相关信息。
我自定义的 Filter 作为提供者拦截器一共有三步:

  1. 写一个自定义类,实现自 Filter 接口
  2. 在 META-INF/dubbo 下增加一个 org.apache.dubbo.rpc.Filter 的文件名,内容为自定义 Filter 的全路径
  3. 自定义 Filter 类上增加一个 @Activate(group = Constants.PROVIDER, order = -999) 注解
阅读全文 »

除非你觉得你的时间不是很宝贵,否则不要看这篇流水账式的博文,这只是篇个人的工作的学习一个总结而已,没有包含任何的技术细节
阅读全文 »

除非你觉得你的时间不是很宝贵,否则不要看这篇流水账式的博文,这只是篇个人的工作的学习一个总结而已,没有包含任何的技术细节
阅读全文 »

除非你觉得你的时间不是很宝贵,否则不要看这篇流水账式的博文,这只是篇个人的工作的学习一个总结而已,没有包含任何的技术细节
阅读全文 »