2020年3月7日

摘要: 先说特性:一条消息只被集群中的一个消费者消费。 之前的文章里提到在consumer启动之后,rebalanceService.start()在while循环中,每20秒doRebalance一次,doRebalance的逻辑就是去nameSrv上获取这个topic下面所有的broker+queue信 阅读全文
posted @ 2020-03-07 11:29 chuliang 阅读(588) 评论(0) 推荐(0) 编辑
 

2020年1月29日

摘要: DefaultMQPushConsumer(以push为例).start()调用mQClientFactory.start(),其中pullMessageService.start在一个循环中从pullRequestQueue中获取pullRequest,执行pullMessage方法,调用的是re 阅读全文
posted @ 2020-01-29 19:54 chuliang 阅读(398) 评论(0) 推荐(0) 编辑
 

2020年1月28日

摘要: 不管是DefaultMQProducer还是DefaultMQPushConsumer,本质都是封装类,发起请求的实际上是RemotingClient,它的start方法调用之后,启动了一个netty的客户端bootstrap,每次需要与nameService或者broker进行连接的时候,调用ge 阅读全文
posted @ 2020-01-28 18:41 chuliang 阅读(1455) 评论(0) 推荐(1) 编辑
 

2020年1月23日

摘要: $emit(methodName, params)和v-on是紧密联系的,调用$emit的是子组件的vm实例,结果是调用了父组件对应的方法,那么这个是怎么做到的呢? 在父组件的创新周期中生成父组件的虚拟节点的过程的时候,会递归生成子组件的虚拟节点。而生成子组件的虚拟节点的时候会把父组件中 写在子组件 阅读全文
posted @ 2020-01-23 00:24 chuliang 阅读(751) 评论(0) 推荐(0) 编辑
 

2019年11月24日

摘要: 无参数:注解RequestMapping中的属性用method = RequestMethod.POST/GET 区分即可 单参数:注解RequestMapping,不指明method ,默认就是post请求。如果想用get请求,参数上注解@RequestParam 多参数:为了方便最好都转换成单参 阅读全文
posted @ 2019-11-24 11:21 chuliang 阅读(1470) 评论(0) 推荐(0) 编辑
 

2019年11月23日

摘要: 具体的写法能够百度的到,简单说就是写一个RequestInterceptor的实现类收集到spring工厂,在其apply方法里,根据当前线程获取request,取出里面的token,放到参数RequestTemplate中。 它的原理,根据之前说的feign源码,在SynchronousMetho 阅读全文
posted @ 2019-11-23 16:56 chuliang 阅读(3973) 评论(0) 推荐(0) 编辑
 

2019年11月10日

摘要: Netty是对Java nio的封装,回顾后者,A、一个ServerSocketChannel和一个Selector,B、把ServerSocketChannel bind到一个端口上,C、再把ServerSocketChannel register到Selector上,在while循环中,D、Se 阅读全文
posted @ 2019-11-10 20:12 chuliang 阅读(320) 评论(0) 推荐(0) 编辑
 

2019年10月28日

摘要: 创建周期和更新周期中,都会用到,以创建周期为例(更新周期的道理是一样的) 在组件节点嵌套的情况下,从嵌套的最里端开始,每一个组件在创建的时候都会调用。逻辑是先递归收集当前组件子组件style的属性并合并覆盖,在收集当前组件style的属性并合并,在递归收集父组件并合并。 这样会出现一个问题如下: < 阅读全文
posted @ 2019-10-28 11:54 chuliang 阅读(502) 评论(0) 推荐(0) 编辑
 

2019年10月20日

摘要: Client端 Hoxton版本的springcloud已经不需要注解@EnableEurekaClient了,spring-cloud-netflix-eureka-client 包里面spring.factories中有配置类EurekaClientAutoConfiguration,其内部类R 阅读全文
posted @ 2019-10-20 09:20 chuliang 阅读(555) 评论(0) 推荐(0) 编辑
 
摘要: 配置:和Feign一样,ribbon通过注册一个NamedContextFactory的子类SpringClientFactory(在RibbonAutoConfiguration中注册),实现不同clientName的配置的隔离。1、除了spring大工厂外,优先级最低的是SpringClient 阅读全文
posted @ 2019-10-20 08:49 chuliang 阅读(449) 评论(0) 推荐(0) 编辑