- 博客(5)
- 收藏
- 关注
原创 【Java定时任务】定时任务重置执行开始时间
场景实现一个类似Redis的AOF的策略,满足条数条件进行备份,满足时间条件进行备份的功能,当执行过一次后定时任务的执行则顺序后延。应用系统中存在一个队列,用于日志批量异步入库,创建一个独立线程消费该队列。考虑到消息的消费既要在合理的时间内入库,又要能顶住消息的洪峰,及时处理消息。实现 // 队列 Queue queue = new LinkedBlockingQueue(); // 创建一个定时任务的线程 ScheduledExecutorService scheduledThr
2021-09-14 16:47:15 877
原创 [java]本地缓存设计
使用技术:1.MQ2.LinkedHashMap(后来使用caffeine)设计问题:1.先删除缓存还是先落数据库2.两个线程同时更新缓存的先后问题关键实现HashMap cache = new LinkedHashMap(); // 非线程安全
2021-06-28 17:06:06 233
原创 【算法】递归遍历转成循环遍历
递归遍历转换成循环遍历需要数据结构的配合——栈将子节点进栈,顺序从右向左进栈取栈顶元素判断是否有子节点,有则继续将子节点进栈,没有则出栈问题思考:能否用多线程来处理??...
2021-06-22 09:44:44 215
原创 【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 1243 1
原创 【Java多线程】过程并行执行,结果顺序返回
适用场景问题抽象:多线程处理集合,返回结果无序。我们经常会遇到需要多线程处理一个有序集合(list)然后返回有序的处理结果,因为多线程的处理开始和结束都是不可预期的,所以结果常常是无序的。预期目的:并行处理业务逻辑,按顺序返回处理结果处理方案:多线程处理返回结果Futrue,对Future保证顺序即可得到有序的结果(不考虑资源共享)在这里插入代码片...
2020-11-12 15:29:24 1988 3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人