- 博客(10)
- 收藏
- 关注
原创 rabbitmq、rocketmq、kafka、java(Timer) 延迟队列(延迟消息)实现与应用
更换实现方式:在触发的时候已经持久化,当业务规模小的时候并约定每个预约面试亭提前半小时无法预约和取消,那么可以设置一个定时任务,去查找已经停止但未结束,频率5分钟一次(可改变),设置map存放,面试亭key:是否开始执行,执行逻辑:先查询、在通过map判断是否正在执行(以为是固定区间的处理,而且主要流程业务逻辑只会执行一次,类似于递推模式,所以不用考虑在查询中过滤处理逻辑性能提升不大),然后修改执行状态,执行业务逻辑。优化方式:切分合适的队列的基础上,内置合适的线程数、与合适的等待时间去执行。
2023-06-13 14:33:09 886
原创 Grpc连接池实现与性能测试对比
如果需要进行大数据传输、高并发请求和多语言通信,可以选择使用 gRPC,如果需要对 RESTful 服务进行简单的调用和数据传输,则可以选择使用 RestTemplate。3、排查网络连接是否在TIME_WAIT中出现大量连接阻塞问题(半连接队列阻塞)http1.1为应用头阻塞,在没有收到response时tcp不能被复用。http2.0避免应用头阻塞,无法避免tcp层头阻塞,在socket buff中有容量限制。测试为复杂对象传输,在简单对象传入,推荐restTemplate。
2023-06-08 18:15:04 902
原创 canal源码分析 deployer(二)
自动刷新缓存配置,是通过同一个参数autoScan判断如果defaultAction作用配置发生改变这进行下图操作(当新增一个destination调用start方法,当删除一个实例时调用stop方法,当修改一个实例时调用roload方法)。可以看出他主要是启动(校验)HA机制并直接在start()种触发processActiveEvent(2中核心启动方法).自动扫码配置SpringInstanceConfigMonitor类中完成实现 通过定时的调度任务(5S轮询)对文件新增、删除、更新做通知。
2023-06-05 22:40:22 124
原创 2021-04-25
jkd1.8导入本地idea一、详情参照二、细节一、详情参照https://mp.weixin.qq.com/s/Z0yjIGsKtiJxQpUSVoYLXw二、细节如果出现jdk源码报错,可能你本地的版本与项目版本用的不是一个版本。推荐学习路线,java.lang、java.util、java.io、java.nio、java.time、java.math、java.net,以架构骨架为基础观看,然后深入细节。...
2021-04-25 23:28:01 125
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人