Loading... ## 一、LinkedList,但不用 **【文章】:**[LinkedList作者说他自己都不用LinkedList?看完给我整不会了](https://mp.weixin.qq.com/s/iDtsQrvJG-kcWK5VqgYw-A) **【内容】:** 在实际使用的时候,如果你有频繁的增删,也不应该用链表。在链表中删除某个元素时,首先得找到它,数据量大时链表的查找耗时可想而知。 **【测验】:** 随机增删的大前提下,数据少时速率一样,10w数据量时,LinkedList比ArrayList慢了15倍。 **【锐评】:** 除了**顺序增加**的场景,LinkedList一无所用 ## 二、Redis基础使用思路 **【文章】:**[Redis缓存使用技巧和设计方案](https://mp.weixin.qq.com/s/9V9Rwh47h884aLMSfplqbg) **【内容】:** 缓存的收益和成本分析、缓存更新策略的选择和使用场景、缓存粒度控制方法、穿透问题优化、无底洞问题优化、雪崩问题优化、热点key重建优化。 **【锐评】:** 缓存更新策略中的双写不一致问题、无底洞优化中基于Redis Cluster四种分布式的批量操作方式值得深挖;穿透优化中用布隆过滤器解决缓存穿透问题值得借鉴。 ## 三、数据库、缓存双写不一致问题 **【文章】:** [缓存与数据库双写,不一致问题及解决方案](https://zhuanlan.zhihu.com/p/62232835) [缓存与数据库双写不一致问题分析和解决](https://blog.csdn.net/qq_38322527/article/details/112908452) [如何解决高并发场景下缓存+数据库双写不一致问题?](https://juejin.cn/post/6844904037943345165#comment) **【内容】:** 第一篇了解CAP,第二篇时间图表梳理问题,第三篇了解强一致性的异步串行化利弊和总结 **【锐评】:** 一般场景下都是读多写少,走CAP就能规避大部分问题了,而且高并发下没有几个场景会必须要求强一致性走异步串行化;极端场景(多读多写)下,无论先删除还是先写库,都会存在数据不一致的情况。根据实际业务看,缓存数据还频繁变更就是自己找事嘛,这种情况用缓存干嘛。能用队列这不摆明就是异步形式嘛。缓存数据库就不存在所谓的一致,总会部分时刻不一致。若是要强一致,你给个分布式锁不就完事啦? ## 四、用户画像基础讲解 **【文章】:** [用户画像技术及方法论](https://mp.weixin.qq.com/s/6FcW4GWXn3uEdpVTbtvBOw) [风控实战:用户画像是什么?怎么用?](https://mp.weixin.qq.com/s/CQuvKmt-Cz_NjVRYqZVLWw) [风控产品:从入门到放弃](https://mp.weixin.qq.com/s?__biz=Mzg4NjA3MDI2MA==&mid=2247483912&idx=1&sn=ff5d39113d43bad0eef88568f8f9f8f5&chksm=cf9e0c93f8e98585769bc657ffcabefb8dd580f6c99c9461ef43466e0e7092d54299814ceecf&scene=178&cur_album_id=2186530480051798018#rd) **【内容】:** 第一篇:用户画像的核心工作就是给用户打“标签”,是为了精准划分用户,从而达到双赢,而不是更好的消费用户。其中,标签模型和CRM框架的构建是核心。做画像要「有目标要有数据」,「也不拘泥于技术细节」,「大胆的尝试」,然后「先粗粒度」,「后细粒度」。   第二篇:讲解贴近风控,画像维度中风控维度值得深挖。 第三篇:也是第二篇的作者,刚好是风控产品,有空把他的文章都看一遍。文章中的风控产品能力模型和成长路径都值得每位风控狗学习(狗头 ## 五、布隆之上?布谷鸟过滤器 布隆过滤器在redis深度历险中有详细说过,这里主要讲讲布谷鸟过滤器。首先需要先了解一下以下词汇:**数字指纹**、**SHA算法**、**非对称加密** **【文章】:** [什么是数字指纹、SHA算法、非对称加密,不能再通俗了](https://cloud.tencent.com/developer/news/210454) (非对称加密这块说的有误,直接看下篇度娘的) [非对称加密](https://baike.baidu.com/item/%E9%9D%9E%E5%AF%B9%E7%A7%B0%E5%8A%A0%E5%AF%86/9874417?fr=aladdin) (看工作过程即可) [干掉布隆过滤器:布谷鸟过滤器有哪些神奇的魔法](https://mp.weixin.qq.com/s/1IceHYELoSD7PtFKN0u9UA) **【锐评】:** 布谷鸟的优势在于查询快、空间利用率高且**支持删除**。bug目前的主流还是布隆过滤器,一般的业务场景也是够用了。 CuckooFilter目前最多的是Go实现[Go-布谷鸟过滤器](https://github.com/seiflotfy/cuckoofilter),Java实现可以看看这个[Java-布谷鸟过滤器](https://github.com/MGunlogson/CuckooFilter4J) ## 六、count(*) 和 count(1) 一样快 **【文章】:** [MySQL 中 count(*) 比 count(1) 快?](https://mp.weixin.qq.com/s/gWKIRuFKvbgQiQdZD0qAYQ) **【阅读】:** 在InnoDB存储引擎下,实际上两个是一样快的,都是走最小索引遍历。另外 `count(id)`走的主键索引不一定是最小索引,即使三者的 `explain`结果是一样的,但它也可能比较慢,这与所使用的B+树存储结构有关。 ## 七、ES Nested使用 **【文章】:** [Elasticsearch Nested类型深入详解](https://cloud.tencent.com/developer/article/1357697) **【阅读】:** Nested类型的内部对象支持增删改**查**,增删改通过Script方式。 ## 八、浅析互联网裁员与招聘并存现象 **【文章】:** [为什么互联网大厂一边大规模裁员,又一边招聘?](https://www.zhihu.com/question/517051862/answer/2353062328) **【阅读】:** 魔幻又现实,这就是成年人的职场世界 ## 九、Random()的seed种子 **【文章】:** [初看一脸懵逼,看懂直接跪下!](https://mp.weixin.qq.com/s/w5EROwc9kUeNAYdba_o1xg) **【锐评】:** 搞懂Random()的种子原理,hello world都能玩出花。 ## 十、for 与 foreach 的区别 **【文章】:** [竟然有一半的人不知道 for 与 foreach 的区别???](https://mp.weixin.qq.com/s/C8vrf_QQt7En-30hPscq2A) **【锐评】:** foreach适用于简单的遍历如实体类之间的转换,复杂条件下效率不高,建议使用stream。另外foreach不支持删除和修改集合元素,但可以修改集合元素里面的属性,这与它内部modcount预期值有关。 ## 十一、Java开发规范思想 **【文章】:** [你见过哪些目瞪口呆的 Java 代码技巧?](https://mp.weixin.qq.com/s/7mGe-t1dmjaHMHzT_HQ0tw) **【阅读】:** 文章中提到的 `《IMPLEMENTING DOMAIN-DRIVEN DESIGN》(实现领域驱动设计)`这本书,讲解了贫血模型与领域模型的区别,有时间值得去观摩一下。 抽象接口定义个人觉得还是看开发时间和维护情况吧,如果开发又短又是多人设计一个系统很难要求全部按照语义抽象,而且这块也很考验经验,太多人都是过度模板,使用的时候很累的。 hibernate 提供的 jsr 303 实现Bean验证这块值得学习。 `Maps.newHashMap()`静态构造方法的语义简化也体现了约定优于配置的优雅。 个人开发:业务驱动技术(工作角度)、技术驱动技术(自我成长角度) ## 十二、JDK9中String底层由char[]改成byte[] **【文章】:** [JDK9为何要将String的底层实现由char数组改成了byte数组?](https://mp.weixin.qq.com/s?__biz=MzU2OTYxNjk0Mg==&mid=2247491785&idx=1&sn=7c7b8f08a91ba41b36a941df16ced9ea&chksm=fcf95f88cb8ed69e564fed4f98ad09d0205649f0c2c9b4168f9a883caa77a4ffdaf014471f2b&mpshare=1&scene=23&srcid=0427D3XIU7V0NRx10a9y0vkO&sharer_sharetime=1651043918909&sharer_shareid=5359849e8d537b2daed6af825f88df3f%23rd) **【阅读】:** 用UTF-16定长编码在低位字符只需要2字节存储,降低了开销。 --- 五月份目标是15篇阅读&锐评,这个月重点将放在ES和Kafka上。DDIA以及设计模式都没有时间好好学一学,泪目。 Last modification:August 22, 2022 © Allow specification reprint Like 0 喵ฅฅ