自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(7)
  • 收藏
  • 关注

原创 CAT的Server消费消息(二)

1. 消费消息的流程从DefaultMessageHandler#handle=》RealtimeConsumer#consume,查找符合当前时间的时段Period,每个时段都会有开始结束时间,timestamp >= m_startTime && timestamp < m_endTime;public void consume(MessageTree tre...

2018-09-14 16:54:21 355

原创 CAT的Server消费消息(一)

1. 初始化RealtimeConsumer实时消费,使用容器自带的初始化前置处理Initializable,初始化PeriodManager,时间间隔为一个小时,也就是以小时为维度进行统计数据,并且设置统计类和消息分析器。public void initialize() throws InitializationException { m_periodManager = new Per...

2018-09-14 12:45:51 315

原创 CAT的Server初始化

1. Server初始化从web.xml文件开始,作为一个war包项目,首先需要初始化Servlet,首先是CatServlet专门初始化cat相关的server程序,比如接受客户端传过来的数据等等,另一个servlet为MVC专门提供数据查询接口的普通的MVC功能,功能相当于缩小版的SpringMVC。过滤器有两个CatFilter最主要是做一些过滤处理,每次请求经过ENVIRONMENT,ID...

2018-09-13 18:57:15 702

原创 CAT的Client端发送消息

1. 生产消息newTransaction,检查上下文ThreadLocal<Context>是否已经初始化,没有则通过m_manager.setup()初始化。初始化消息DefaultTransaction,转交给默认消息管理开始消息处理,m_manager.start(transaction, false);如果是该线程的第一个消息则保存在MessageTreepublic ...

2018-09-06 20:29:14 882

原创 CAT的Client端初始化

1. Client端主要用来采集各种消息,本文采用官方的例子 Transaction t = Cat.newTransaction("your transaction type", "your transaction name"); try { yourBusinessOperation(); Cat.logEve...

2018-09-06 16:18:10 3569

原创 Hystrix的Command执行

常用的执行方式有同步execute()和异步queue(),同步的方法也是通过异步get()来实现的queue().get();queue()方法其实只是对核心方法AbstractCommand#toObservable()做了代理处理,下面重点介绍该方法。1. 用局部变量保存当前引用,初始化终止命令清除回调terminateCommandCleanup和退订回调unsubscribeComm...

2018-09-01 16:19:22 963

原创 Hystrix的Command初始化

1. 在Hystrix中,Command就相当于接口服务,每个Command都可以设置自己的数据配置,继承HystrixCommand实现他的构造函数,最少需要设置HystrixCommandGroupKey,因为后续要根据这个来区别每个Command,服务总该有个执行方法也就是实现父类的run(),当满足熔断要求的时候需要实现getFallback(),当需要程序缓存的时候需要实现getCach...

2018-09-01 14:46:36 2496

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除