

多颗糖C
-
TLA+ 入门教程(6):Raft
与上一节讨论 Paxos 时一样,本文不介绍 Raft 协议基本知识,读者需已经了解 Raft 协议,如无这部分背景知识,请阅读 Raft 论文或参见《条分缕析Raft算法》。 注…
-
TLA+ 入门教程(5):Paxos
1、Paxos 简介 上一节我们讨论了两阶段提交的 TLA+ 规约。众所周知,两阶段提交有一个明显的缺点,如果 TM 宕机,整个流程将停滞不前。 有一个简单的工程解决办法:准备一个…
-
看 Discord 从 Go 迁移至 Rust
最近 Discord 技术团队的博客《Why Discord is switching from Go to Rust》[1]升到了 hackernews 前十,这篇文章阅读后有两…
-
如何才能更好的学习 MIT 6.824 分布式系统?
如何才能更好的学习 MIT 6.824 分布式系统? 大名鼎鼎的 MIT 6.824 在今年终于放出了官方视频课程,这门课对于分布式系统入门来说是公认的神课。我是去年刷完的这门课,…
-
树上的男爵
树上的男爵 在中国,大部分人知道卡尔维诺都是因为王小波,我也是第一次看卡尔维诺的书。 故事很简单,“我”的哥哥柯希莫因为受不了姐姐做的一顿蜗牛餐,忍无可忍爬到了树上,整本书都在描述…
-
TLA+ 入门教程(4):两阶段提交
本次 TLA+ 入门教程系列将分为几个部分,帮助你从零掌握 TLA+ 语言的基本知识,欢迎关注公众号和知乎“多颗糖”。 本章要学习的是用在婚姻和数据库领域的分布式算法——两阶段提交…
-
如何有效刻意练习?提升能力的练习方法
如何有效刻意练习?提升能力的练习方法 无论是在学校还是在职场上,我们都需要锻炼我们的技能,学校的应试技能,职场的职业技能,都是需要我们去提高的。自从1万小时理论火了以后,大家都知道…
-
在厨房拯救自己
插画:阿丁猫ADM 如今,公司的食堂开放堂食,路上行人逐渐放松,摘下了口罩。新型冠狀病毒疫情慢慢消退,回想起这段不久之前的隔离时光,印象最深的竟是,在死亡的阴影之下,不可多得的每一…
-
如何阅读 paper
研究者如果想要在一个领域深入研究,阅读相关的 paper 是必不可少的,但如何阅读一篇 paper 这项技能却没有课程教授。How to Read a Paper[1] …
-
蚂蚁上市,以及我们渴求的财富自由
最近蚂蚁金服(已更名为蚂蚁集团)上市的消息尘埃落定,这家自从2018年就传言要上市的互联网金融巨头,又要掀起一波新的“造富”运动。 据我所知,老的 P7 应该有上万股,年轻的 P7…
-
TLA+入门教程(3):《虎胆龙威3》经典倒水问题
本节我们来看一个更有趣、更具体的例子,布鲁斯·威利斯主要的电影《虎胆龙威3》中有一个经典的倒水问题,电影中主角需要用一个 3 加仑的桶和一个 5 加仑的桶,准确装出 4 加仑的水(…
-
【时间管理】单核工作法
《单核工作法图解:事多到事少,拖延变高效》这本书讲的是如何管理时间和待办事项,从而战胜拖延。 这本小册子很薄,但对生活和工作真的很有帮助。作者提出我们应该一次只专注于一项工作——即…
-
看过的书隔天就忘?比尔盖茨分享他的记忆体系!
比尔盖茨是出名的“读书狂魔”——他每年要读大约 50 本书,他还会在个人博客 gatesnotes[1] 上分享他读的书和读书心得。很多书都是相当有难度和深度的…
-
TLA+ 入门教程(2):一个简单的例子
本次 TLA+ 入门教程系列将分为几个部分,帮助你从零掌握 TLA+ 语言的基本知识,欢迎关注公众号和知乎“多颗糖”。 上一节我们介绍了形式化方法和 TLA+,让我们小试牛刀,Ge…
-
思考生活——《影响力》书评
日常生活中到底是什么在悄悄影响了我们的行为。 书中举例说,汽车经销商会先跟你谈好一辆车的价格,然后再慢慢让你选配件,再花几千块升级下音响、给车窗贴更好的膜、换更好用的轮胎,十几万的…
-
TLA+ 入门教程(1):形式化方法简介
本次 TLA+ 入门教程系列将分为几个部分,帮助你从零掌握 TLA+ 语言的基本知识,欢迎关注公众号和知乎“多颗糖”。 1960 年代中后期,软件行业开始爆发“软件危机(Softw…
-
被讨厌的勇气——阿德勒心理学
一提到心理学,人们往往只想到弗洛伊德或荣格,但在心理学界,阿德勒是与弗洛伊德、荣格并列的“三巨头”之一。今天要讲的这个理论就来自于阿德勒。 阿德勒的父母都是犹太商人,家庭富裕,但他…
-
认识分布式系统
Google “三驾马车”论文发布以后,“大数据”和“分布式”就成了各种科技新闻媒体的“宠儿”,虽然如今头版已被“人工智能”、“机器学习”占据,围绕着解决大规模分布式应用技术挑战的…
-
漫谈分布式共识问题
混乱的“一致性”问题 Consensus != Consistency 受翻译影响,网上很多讨论 paxos 或 raft 的博客使用“分布式一致性协议”或者“分布式一致性算法”这…
-
同样更新分支,git merge 和 rebase 有什么区别?
最近在给 kubernetes 提交代码,k8s 社区要求非常严格,既要分支保持与主干的代码同步,还要一次只能有一条 commit。过程中我错误地使用了一把 git merge 和…