Java开发
Java开发
weirong2010
这个作者很懒,什么都没留下…
展开
-
【Java定时任务】定时任务重置执行开始时间
场景实现一个类似Redis的AOF的策略,满足条数条件进行备份,满足时间条件进行备份的功能,当执行过一次后定时任务的执行则顺序后延。应用系统中存在一个队列,用于日志批量异步入库,创建一个独立线程消费该队列。考虑到消息的消费既要在合理的时间内入库,又要能顶住消息的洪峰,及时处理消息。实现 // 队列 Queue queue = new LinkedBlockingQueue(); // 创建一个定时任务的线程 ScheduledExecutorService scheduledThr原创 2021-09-14 16:47:15 · 841 阅读 · 0 评论 -
[java]本地缓存设计
使用技术:1.MQ2.LinkedHashMap(后来使用caffeine)设计问题:1.先删除缓存还是先落数据库2.两个线程同时更新缓存的先后问题关键实现HashMap cache = new LinkedHashMap(); // 非线程安全原创 2021-06-28 17:06:06 · 218 阅读 · 0 评论 -
【IDE】IDEA合并冲突问题
问题1:IDEA合并tool中的结果展示的内容不属于合并的两个分支,既不是your Version 也不是Server Version,而是your Version的前一个commit产生原因:使用git的cherrypick 合并过的原因说明分支A分支-解决线上Bug分支B分支-本地开发分支过程分析:在遇到线上问题需要紧急修复,拉取A分支修改bugs,本地一直使用B分支在测试环境进行开发,既然发现线上有这个问题,那么本地也一定会有这个bug,所以在修改完Bug的时候将A分支的fix用git的原创 2021-03-12 15:12:11 · 1207 阅读 · 1 评论 -
【Java多线程】过程并行执行,结果顺序返回
适用场景问题抽象:多线程处理集合,返回结果无序。我们经常会遇到需要多线程处理一个有序集合(list)然后返回有序的处理结果,因为多线程的处理开始和结束都是不可预期的,所以结果常常是无序的。预期目的:并行处理业务逻辑,按顺序返回处理结果处理方案:多线程处理返回结果Futrue,对Future保证顺序即可得到有序的结果(不考虑资源共享)在这里插入代码片...原创 2020-11-12 15:29:24 · 1905 阅读 · 3 评论