摘要: 复习一下spring实现IOC的源码流程 准备工作: ​ 强烈建议大家从git上拉取spring源码来学习Spring源码。因为里面相较于IDEA生成的会有注释,里面有的方法会有注释看起来会省力一点。 ​ 以下都是用5.0.2版本来做阐述。 bean创建的流程图 写在前面:建议大家一定要自己用实例跑 阅读全文
posted @ 2020-11-15 11:41 Jimmyhe 阅读(4359) 评论(0) 推荐(6) 编辑
摘要: 在异步消息队列的应用 队列延迟 在队列中,如果空了,消费者不断的循环pop新的,会导致CPU和redis的QPS升高。若使用sleep强制降下来,当消费者很多的话,redis依然会不断的轮询查询。 blpop/brpop可以在队列没有数据的时候休眠,一旦有数据就可以醒过来,延时几乎为0. # 对非空 阅读全文
posted @ 2020-11-15 11:38 Jimmyhe 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 分布式锁 redis命令积累 expire key 600; 设置超时时间 ttl key 查看超时时间 本质上就是在redis里面占一个坑,别的进程要进来时,发现已经有人在了,只好放弃或稍后再试。 setnx setnx lock true do sth del lock 问题:如果中间逻辑出现异 阅读全文
posted @ 2020-11-15 11:22 Jimmyhe 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 11.5 36. 把数字翻译成字符串 给定一个数字,我们按照如下规则把它翻译为字符串:0 翻译成 “a” ,1 翻译成 “b”,……,11 翻译成 “l”,……,25 翻译成 “z”。一个数字可能有多个翻译。请编程实现一个函数,用来计算一个数字有多少种不同的翻译方法。 输入: 12258 输出: 5 阅读全文
posted @ 2020-11-15 11:08 Jimmyhe 阅读(73) 评论(0) 推荐(0) 编辑