怀念一代传奇,陈皓与他的《左耳听风》
【1】 博文视点找到我,说 他们将陈皓生前文章精粹整理成了一本书 《左耳听风: 传奇程序员练级攻略》 ,让我帮忙推荐。
义不容辞。
【2】 和陈皓,有过几次架构方案的讨论,其中一个话题是:数据写操作时,应该先淘汰缓存,还是先修改数据库。
我的观点是:应该先淘汰缓存。 理由是: 如果先修改数据库,再淘汰缓存,毕竟这两个操作不是原子操作,可能出现修改数据库成功,然后中断(例如,服务重启),导致缓存存在脏数据的问题(数据库中为新,缓存中为旧)。
然而如果先淘汰缓存,即使操作中断,未来得及修改数据库,也最多额外引入一次cache miss,而不会引发脏数据(数据库中为旧,缓存中为NULL)。
陈皓的观点是:应该先修改数据库。
理由是: 如果先淘汰缓存,则并发读操作,会cache miss(2.1操作),并将从库中的脏数据(1.3仍未完成)读取出来(2.2操作),放入缓存,导致缓存存在脏数据的问题(2.3操作)。
我俩争论不下。 画外音:按照Cache Aside Pattern,建议先修改数据库。
在我的印象中,陈皓就是这样一个简单,纯粹的技术人。
【3】 《左耳听风:传奇程序员练级攻略》是怎么来的? 为了怀念一代传奇陈皓,博文视点将陈皓生前技术文章精粹整理成册(主要来自CoolShell),来表达对他的追忆与崇敬。并且出版社承诺,所有收入归其家人所有。
这本书的内容呢? 内容系统且全面,包含:如何通过理解编程本质和范式、优质代码与架构成为有竞争力的程序员,如何通过注重高效沟通、研发效率、科学管理、合理考核、有效招聘、工程师文化来打造技术领导力,以及如何通过正确面对三观、技术变化、中年危机、他人评价、人生选择、时间管理、有效学习来实现持续成长。 有些内容,程序员可用来完成快速入门; 有些内容,架构师可以用来完成境界提升; 有些内容,技术从业者可参照规划职业生涯; 有些内容,大众亦可觅得人生启迪与内心观照。
总之,是一本不可多得的终身学习手册。
【4】 如何购买?
【5】 芝兰生于空谷,不以无人而不芳。
希望耗子哥的攻略,能影响更多的人 。
义不容辞。
【2】 和陈皓,有过几次架构方案的讨论,其中一个话题是:数据写操作时,应该先淘汰缓存,还是先修改数据库。
我的观点是:应该先淘汰缓存。 理由是: 如果先修改数据库,再淘汰缓存,毕竟这两个操作不是原子操作,可能出现修改数据库成功,然后中断(例如,服务重启),导致缓存存在脏数据的问题(数据库中为新,缓存中为旧)。
然而如果先淘汰缓存,即使操作中断,未来得及修改数据库,也最多额外引入一次cache miss,而不会引发脏数据(数据库中为旧,缓存中为NULL)。
陈皓的观点是:应该先修改数据库。
理由是: 如果先淘汰缓存,则并发读操作,会cache miss(2.1操作),并将从库中的脏数据(1.3仍未完成)读取出来(2.2操作),放入缓存,导致缓存存在脏数据的问题(2.3操作)。
我俩争论不下。 画外音:按照Cache Aside Pattern,建议先修改数据库。
在我的印象中,陈皓就是这样一个简单,纯粹的技术人。
【3】 《左耳听风:传奇程序员练级攻略》是怎么来的? 为了怀念一代传奇陈皓,博文视点将陈皓生前技术文章精粹整理成册(主要来自CoolShell),来表达对他的追忆与崇敬。并且出版社承诺,所有收入归其家人所有。
这本书的内容呢? 内容系统且全面,包含:如何通过理解编程本质和范式、优质代码与架构成为有竞争力的程序员,如何通过注重高效沟通、研发效率、科学管理、合理考核、有效招聘、工程师文化来打造技术领导力,以及如何通过正确面对三观、技术变化、中年危机、他人评价、人生选择、时间管理、有效学习来实现持续成长。 有些内容,程序员可用来完成快速入门; 有些内容,架构师可以用来完成境界提升; 有些内容,技术从业者可参照规划职业生涯; 有些内容,大众亦可觅得人生启迪与内心观照。
总之,是一本不可多得的终身学习手册。
【4】 如何购买?
【5】 芝兰生于空谷,不以无人而不芳。
希望耗子哥的攻略,能影响更多的人 。
评论