聊聊sentinel的NettyHttpCommandCenter

2018-08-20
阅读 10 分钟
2.1k
com/alibaba/csp/sentinel/transport/command/NettyHttpCommandCenter.java

[case33]sentinel自定义DataSource实战

2018-08-19
阅读 7 分钟
2.4k
这里在启动时通过FlowRuleManager.register2Property,注册了flowRule、degradeRule、systemRule三类规则的数据源

聊聊sentinel的SentinelResourceAspect

2018-08-18
阅读 4 分钟
3.4k
com/alibaba/csp/sentinel/annotation/aspectj/SentinelResourceAspect.java

聊聊sentinel的DataSource

2018-08-17
阅读 8 分钟
2.5k
sentinel-datasource-extension-0.1.1-sources.jar!/com/alibaba/csp/sentinel/datasource/DataSource.java

聊聊sentinel的ModifyRulesCommandHandler

2018-08-16
阅读 7 分钟
2.3k
sentinel-transport-common-0.1.1-sources.jar!/com/alibaba/csp/sentinel/command/handler/ModifyRulesCommandHandler.java

聊聊sentinel的SentinelWebAutoConfiguration

2018-08-15
阅读 12 分钟
4.5k
spring-cloud-alibaba-sentinel-autoconfigure-0.2.0.BUILD-SNAPSHOT-sources.jar!/org/springframework/cloud/alibaba/sentinel/SentinelWebAutoConfiguration.java

聊聊sentinel的SimpleHttpCommandCenter

2018-08-14
阅读 15 分钟
2.9k
sentinel-transport-simple-http-0.1.1-sources.jar!/com/alibaba/csp/sentinel/transport/command/SimpleHttpCommandCenter.java

聊聊rocketmq的AsyncAppender

2018-08-13
阅读 11 分钟
2.3k
序 本文主要研究一下rocketmq的AsyncAppender AsyncAppender org/apache/rocketmq/logging/inner/LoggingBuilder.java {代码...} 初始化Dispatcher,构造器调用Dispatcher的start,然后close方法调用dispatcher.join() append方法会判断buffer够不够,够的话往buffer添加事件,不够则丢弃同时进行DiscardSummary统计 dis...

[case32]alibaba限流组件Sentinel实战

2018-08-12
阅读 3 分钟
4.6k
这里指定应用的端口为8080,与sentinel server通信端口为7080,sentinel server的地址为localhost:9999

聊聊rocketmq的DailyRollingFileAppender

2018-08-11
阅读 6 分钟
2.2k
这里重写了subAppend方法,先检查当前时间是否大于nextCheck值,大于则更新nextCheck值,然后进行rollOver操作,最后在调用父类的subAppend方法

聊聊rocketmq的RollingFileAppender

2018-08-10
阅读 5 分钟
2.2k
序 本文主要研究一下rocketmq的RollingFileAppender RollingFileAppender org/apache/rocketmq/logging/inner/LoggingBuilder.java {代码...} 这里重写了subAppend方法,调用父类subAppend方法之后,判断是否需要rollOver 这里定义了maxFileSize,即单个文件的大小,然后还定义了nextRollover索引 这里使用的是CountingQ...

聊聊rocketmq的FileAppender

2018-08-09
阅读 9 分钟
2.3k
序 本文主要研究一下rocketmq的FileAppender WriterAppender org/apache/rocketmq/logging/inner/LoggingBuilder.java {代码...} 这个接口定义了writeHeader、writeFooter、append等方法 append方法这里参数是LoggingEvent,内部委托给subAppend subAppend方法调用layout进行格式化event,然后如果需要flush,则会直接对...

聊聊rocketmq的RemotingException

2018-08-08
阅读 3 分钟
4.7k
继承自checked exception,底下有RemotingCommandException、RemotingConnectException、RemotingSendRequestException、RemotingTimeoutException、RemotingTooMuchRequestException

聊聊rocketmq的NettyEncoder及NettyDecoder

2018-08-07
阅读 5 分钟
2.9k
序 本文主要研究一下rocketmq的NettyEncoder及NettyDecoder NettyEncoder org/apache/rocketmq/remoting/netty/NettyEncoder.java {代码...} 这里继承MessageToByteEncoder,类型是RemotingCommand,先写入header再写入body RemotingCommand.encodeHeader org/apache/rocketmq/remoting/protocol/RemotingCommand.java {...

聊聊rocketmq的RequestTask

2018-08-06
阅读 12 分钟
2.4k
序 本文主要研究一下rocketmq的RequestTask RequestTask org/apache/rocketmq/remoting/netty/RequestTask.java {代码...} 里头有一个runnable、channel以及remotingCommand NettyRemotingAbstract.processRequestCommand org/apache/rocketmq/remoting/netty/NettyRemotingAbstract.java {代码...} 这里根据上下文准备...

[case31]dubbo-spring-boot-starter小试牛刀

2018-08-05
阅读 3 分钟
2.8k
dubbo-spring-boot-starter的官方文档貌似比较粗糙,比较不符合spring boot开源项目的风格,也没有看到example工程,实践起来,稍稍费劲一点。

聊聊rocketmq的NettyClientConfig

2018-08-04
阅读 9 分钟
2.6k
序 本文主要研究一下rocketmq的NettyClientConfig NettyClientConfig org/apache/rocketmq/remoting/netty/NettyClientConfig.java {代码...} 这里主要有几个参数: clientWorkerThreads,默认为4 clientCallbackExecutorThreads,默认为cpu核数 clientOnewaySemaphoreValue,默认为NettySystemConfig.CLIENT_ONEWAY_SEM...

聊聊rocketmq的BrokerHousekeepingService

2018-08-03
阅读 8 分钟
2.2k
实现了ChannelEventListener接口,除了onChannelConnect外,其余各个方法均委托给namesrvController的routeInfoManager的onChannelDestroy方法

聊聊rocketmq的KVConfigManager

2018-08-02
阅读 9 分钟
3.1k
这里使用HashMap,然后通过ReentrantReadWriteLock进行并发控制,map的key是namespace,而value是一个HashMap

聊聊rocketmq的PushConsumerImpl

2018-08-01
阅读 15 分钟
4.6k
序 本文主要研究一下rocketmq的PushConsumerImpl PushConsumerImpl io/openmessaging/rocketmq/consumer/PushConsumerImpl.java {代码...} 这里创建的是DefaultMQPushConsumer,同时设置的messageListener为MessageListenerImpl attachQueue的时候,使用的是rocketmqPushConsumer.subscribe 启动时调用rocketmqPushConsu...

聊聊rocketmq的PullConsumerImpl

2018-07-31
阅读 12 分钟
2.3k
LocalMessageCache是从consumeRequestCache这个LinkedBlockingQueue中poll出来ConsumeRequest,该request携带了MessageExt

聊聊rocketmq的SequenceProducerImpl

2018-07-30
阅读 3 分钟
2.1k
序 本文主要研究一下rocketmq的SequenceProducerImpl SequenceProducerImpl io/openmessaging/rocketmq/producer/SequenceProducerImpl.java {代码...} 采用的是LinkedBlockingQueue,send方法实际调用的是添加到队列 另外提供了commit以及rollback方法,都加了synchronized保证对LinkedBlockingQueue操作的线程安全 com...

[case30]聊聊servicecomb-saga的alpha-server

2018-07-29
阅读 3 分钟
2.8k
alpha-server是servicecomb-saga的分布式事务协调中心,采用spring boot开发,可以直接从jar包启动,需要依赖mysql或pg数据库,同时初始化数据。启动命令如下:

聊聊rocketmq的ProducerImpl

2018-07-28
阅读 7 分钟
2.4k
另外调用OMSUtil.msgConvert将api的BytesMessage转换为org.apache.rocketmq.common.message.Message

聊聊AbstractOMSProducer

2018-07-27
阅读 8 分钟
2k
ServiceLifecycle的startup里头调用DefaultMQProducer的start方法,shutdown里头调用DefaultMQProducer的shutdown方法

open-messaging使用实例

2018-07-26
阅读 12 分钟
2.8k
openmessaging-java/openmessaging-api-samples/src/main/java/io/openmessaging/samples/consumer/PullConsumerApp.java

聊聊openmessaging的MessagingAccessPoint

2018-07-25
阅读 15 分钟
1.8k
openmessaging-java/openmessaging-api/src/main/java/io/openmessaging/MessagingAccessPoint.java

聊聊openmessaging-java

2018-07-24
阅读 32 分钟
2.5k
openmessaging-java/openmessaging-api/src/main/java/io/openmessaging/producer/Producer.java

OpenMessaging概览

2018-07-23
阅读 1 分钟
2.7k
namespace,类似cgroup的namespace,用来进行安全隔离,每个namespace有自己的producer、consumer、topic、queue等

[case29]JDK11的ZGC小试牛刀

2018-07-22
阅读 39 分钟
4.3k
ZGC全称是Z Garbage Collector,是一款可伸缩(scalable)的低延迟(low latency garbage)、并发(concurrent)垃圾回收器,旨在实现以下几个目标: