- 博客(14)
- 收藏
- 关注
原创 RocketMQ
它首先会判断上次收到Leader心跳包的时间是否超过了两倍的发送心跳间隔,如果超过,判断当前节点是否是Follower并且上次收到心跳包的时间大于最大心跳时间 * 每次发送心跳的时间间隔,如果成立,就会转为Candidate等待发起竞选,也就是说如果Follower节点长时间未收到Leader节点的心跳请求,会认为Leader出现了故障,会转为Candidate角色,在Candidate角色下会重新发竞选进行Leader选举。但是,这个MessageId是无法保证全局唯一的,也会有冲突的情况。
2024-03-22 11:08:40
609
原创 RocketMQ基本使用
首先需要确定消息的唯一键,可以是msgId,也可以是消息内容中的唯一标识字段,例如订单Id等。如果不存在则插入,并消费,否则跳过。某些业务流程如果支持批量方式消费,则可以很大程度上提高消费吞吐量,例如订单扣款类应用,一次处理一个订单耗时 1 s,一次处理 10 个订单可能也只耗时 2 s,这样即可大幅度提高消费的吞吐量,通过设置 consumer的 consumeMessageBatchMaxSize 返个参数,默认是 1,即一次只消费一条消息,例如设置为 N,那么每次消费的消息数小于等于 N。
2024-03-13 21:17:28
1388
原创 RabbitMQ
RabbitMQ 消息确认机制(ACK)默认是自动确认的,自动确认会在消息发送给消费者后立即确认,但存在丢失消息的可能,如果消费端消费逻辑抛出异常,假如你用回滚了也只是保证了数据的一致性,但是消息还是丢了,也就是消费端没有处理成功这条消息,那么就相当于丢失了消息。适用于广播类型的消息发送。扇出交换机的特点是类似于广播,只要队列与该类型的交换机绑定,所有发送到该交换机的信息都会被转发到所有与之绑定的队列,与routingKey无关。生产者将消息发布到特定的交换机,并且可以选择将消息发送到特定的队列或交换机。
2024-03-12 10:37:32
740
原创 gitlab断电后启动不了
列出所有正在运行的任务,如果存在某个任务是running,其他任务waiting, 则是该任务堵塞了其他服务,停止该任务即可。5.再次启动systemctl start gitlab-runsvdir.service,则正常启动。gitlab-ctl start 启动时候报错,runsv not running。如果存在inactive dead的服务,则意味着这个服务出错了,进行第三步操作。6.gitlab-ctl start 启动gitlab成功。若启动时候没反应,则进行第二步,查看系统服务。
2024-02-19 10:49:20
332
原创 ETL工具之datax
DataX 是一个异构数据源离线同步工具,致力于实现包括关系型数据库(MySQL、Oracle等)、HDFS、Hive、ODPS、HBase、FTP等各种异构数据源之间稳定高效的数据同步功能。
2024-02-05 10:13:38
971
原创 idea好用的插件
主要功能如下:·生成mapper xml文件快速从代码跳转到mapper及从mapper返回代码mybatis自动补全及语法错误提示集成mybatis generator gui界面根据数据库注解,生成swagger model注解。
2024-01-30 16:07:07
252
原创 eazyexcel导入导出excel
Java领域解析、生成Excel比较有名的框架有Apache poi、jxl等。但他们都存在一个严重的问题就是非常的耗内存。如果你的系统并发量不大的话可能还行,但是一旦并发上来后一定会OOM或者JVM频繁的full gc。EasyExcel是阿里巴巴开源的一个excel处理框架,以使用简单、节省内存著称。EasyExcel能大大减少占用内存的主要原因是在解析Excel时没有将文件数据一次性全部加载到内存中,而是从磁盘上一行行读取数据,逐个解析。
2024-01-22 15:56:46
511
原创 集成minio实现文件上传下载
MInIO的安装有很多方法、单实例的、集群分布式的、docker部署的、支持k8s的,我们使用最简单的一种安装方式:linux单节点安装。如果希望对MinIO有深入的掌握,访问MinIO官网:https://min.io。
2024-01-15 17:37:21
680
原创 Spring源码学习 第三章 Spring是如何解决循环依赖源码解析
解决循环依赖的思路是 A 依赖B 然后B 依赖A然后先后创建了A 和B并缓存到了三级缓存,此时再次调用doGetBean 获取A时三级缓存有数据就跳出循环,等所有bean创建好就会放入一级缓存。
2023-12-14 09:56:29
48
原创 Spring源码学习 第一章 SpringBean创建大纲流程
本文主要介绍springbean创建的大体脉络,具体的方法详细分析会放在后面的文章,主要思路是按照我学习的源码的流程来书写文章,文章如有错误麻烦评论指出,学海无涯希望我们都向自己的目标更近一步。提示:以下是本篇文章正文内容,下面案例可供参考这里主要简单梳理了bean创建的主要过程,分为两个部分一个是把配置文件读成bean定义,另一部分是由bean工厂用bean定义创建bean,这儿只用脑海中有个大体的脉络即可。大纲链接。
2023-12-09 11:55:58
67
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人