会员
周边
新闻
博问
AI培训
云市场
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式
...
退出登录
注册
登录
chuliang
上一页
1
2
3
4
5
6
7
下一页
2020年8月21日
RocketMQ 的heartBeat在做哪些事情
摘要: 先考虑一个问题:在一个JVM进程中,启动多个消费者/生产者,有没有限制?使用的netty client是同一个还是多个? 以DefaultMQPushConsumer为例,start this.defaultMQPushConsumerImpl.start() mQClientFactory.sta
阅读全文
posted @ 2020-08-21 13:19 chuliang
阅读(384)
评论(0)
推荐(0)
编辑
2020年8月20日
Netty调用channel.close方法和 客户端所在Java进程正常/异常关闭的细节
摘要: close方法中,客户端发出正常的挥手请求,在服务端的AbstractNioByteChannel的内部类NioByteUnsafe的read方法中,close = allocHandle.lastBytesRead() < 0这句为true,就不会进入channelRead而是进入if (clos
阅读全文
posted @ 2020-08-20 14:41 chuliang
阅读(1953)
评论(0)
推荐(0)
编辑
2020年8月4日
RocketMQ源码之 事务消息的回调方法应该怎么写?
摘要: 两个回调方法:发送消息成功之后执行事务的executeLocalTransaction,回查时候调用的checkLocalTransaction。 发送事务消息sendMessageInTransaction的时候,参数1是message,参数2是Object类型,message的property中
阅读全文
posted @ 2020-08-04 15:17 chuliang
阅读(1257)
评论(0)
推荐(0)
编辑
2020年7月6日
spring 源码
摘要: getBean(String beanName)是spring的核心方法 >doGetBean:其中transformedBeanName是处理beanName的;getSingleton是从缓存中的bean单例;getObjectForBeanInstance是当bean是factoryBean的
阅读全文
posted @ 2020-07-06 01:38 chuliang
阅读(182)
评论(0)
推荐(0)
编辑
2020年7月2日
多线程同步工具ReentrantLock CountDownLatch CyclicBarrier Semaphore join
摘要: ReentrantLock、CountDownLatch 、Semaphore三者底层都是AbstractQueuedSynchronizer,逻辑都是先获取通行许可,成功了执行接下来的代码,失败了挂起;另外就是要在合适的时候唤醒其他线程。 对照上面的流程 ReentrantLock获取通行许可是l
阅读全文
posted @ 2020-07-02 16:23 chuliang
阅读(200)
评论(0)
推荐(0)
编辑
2020年6月16日
RocketMQ 的事务消息
摘要: rocketMQ解决分布式事务的思路:1、a事务成功和mq收到消息保持一致。2、保证这条消息一定会被消费,从而完成b事务。时效性可能差了点,但是能达到最终的一致,优点是不会阻塞。 其中第二步保证消息一定会被消费可以看之前的博文,消费端用集群模式可以做到这一点。 下面来看怎样使得 事务a成功 和 mq
阅读全文
posted @ 2020-06-16 16:52 chuliang
阅读(366)
评论(0)
推荐(0)
编辑
RocketMQ 怎样解决为了 实时拉取消息 而不得不一直轮询的问题
摘要: 我用的是DefaultMQPushConsumer,启动一个consumer的时候,根据之前的博文,push其实还是一次次的pullrequest。这里就有个问题:如果需要实时性很高,broker新收到一条消息之后,马上就要传递给订阅的consumer,那么consumer这边就需要不停的轮询,一次
阅读全文
posted @ 2020-06-16 15:39 chuliang
阅读(1211)
评论(0)
推荐(1)
编辑
2020年6月12日
feign和ribbon的异常捕捉
摘要: 1、在selectServer的时候,如果没有对应的server,那么会抛出一个ClientException,然后被捕获,进入RxJava的next链,最后再抛出异常给调用方法,这时候就需要我们自己处理。 2、如果有server,第一次失败,如果没到到最大重试次数,ribbon的RxJava的调用
阅读全文
posted @ 2020-06-12 17:00 chuliang
阅读(1015)
评论(0)
推荐(0)
编辑
2020年4月29日
rocketMQ为什么会重复消费
摘要: messageModel有两种方式:BROADCASTING 和 CLUSTERING, 消费者收到消息也有两种消费方式:orderly和concurrently, 1、BROADCASTING模式下,所有注册的消费者都会消费,而这些消费者通常是集群部署的一个个微服务,这样就会多台机器重复消费。 2
阅读全文
posted @ 2020-04-29 16:56 chuliang
阅读(7133)
评论(0)
推荐(1)
编辑
2020年4月23日
springboot时区问题
摘要: 1、spring.jackson.*** 会配置时区 2、实体类的注解@JsonFormat也有一个时区 3、mysql连接的时候,serverTimezone也有一个时区 4、操作系统还有一个时区 5、mysql也有一个时区 流程: 1、前端传给mvc一个字符串的时候,mvc要根据"yml中jac
阅读全文
posted @ 2020-04-23 18:49 chuliang
阅读(1627)
评论(0)
推荐(0)
编辑
上一页
1
2
3
4
5
6
7
下一页
公告
导航
博客园
首页
新随笔
新文章
联系
订阅
管理