基于Redis的分布式锁到底安全吗(下)?


自从我写完这个话题的上半部分之后,就感觉头脑中出现了许多细小的声音,久久挥之不去。它们就像是在为了一些鸡毛蒜皮的小事而相互争吵个不停。的确,有关分布式的话题就是这样,琐碎异常,而且每个人说的话听起来似乎都有道理。

今天,我们就继续探讨这个话题的后半部分。本文中,我们将从antirez反驳Martin Kleppmann的观点开始讲起,然后会涉及到Hacker News上出现的一些讨论内容,接下来我们还会讨论到基于Zookeeper和Chubby的分布式锁是怎样的,并和Redlock进行一些对比。最后,我们会提到Martin对于这一事件的总结。

阅读全文 »


基于Redis的分布式锁到底安全吗(上)?


网上有关Redis分布式锁的文章可谓多如牛毛了,不信的话你可以拿关键词“Redis 分布式锁”随便到哪个搜索引擎上去搜索一下就知道了。这些文章的思路大体相近,给出的实现算法也看似合乎逻辑,但当我们着手去实现它们的时候,却发现如果你越是仔细推敲,疑虑也就越来越多。

阅读全文 »


【科幻】光年之外的世界


凌雨化身为一条美人鱼。五颜六色的鱼儿围过来,在她身边嬉戏。一缕阳光透进水中,将她周围的海水映照得犹如一块晶莹剔透的蓝色翡翠。她和它们一起游进更大的鱼群,飞舞着,旋转着。

阅读全文 »


深度学习、信息论与统计学


去年最受瞩目的科技词汇莫过于“人工智能”了,而前一段时间神秘旗手Master的连胜事件再一次把“人工智能”这个话题推到了普通大众面前。但是,作为一名技术人员,自然不能和普通人一样只是看个热闹,我和你一样,对于这项技术背后的运作原理深感兴趣。

阅读全文 »


知识的三个层次


昨天我去交管大队办理年度验车手续,出乎意料地发现,本应冷冷清清的办事大厅里竟然挤满了人。一问才知道,大家都在排队缴纳过去一年积攒下来的违章罚款。我这才猛然惊觉,2016就这么“忽”地一下要过去了。原来,人们这是在以清算债务的方式向过去的2016告别。

阅读全文 »


如何形象地描述RxJava中的背压和流控机制?


之前我在知乎上受邀回答过一个关于RxJava背压(Backpressure)机制的问题,今天我把它整理出来,希望对更多的人能有帮助。

阅读全文 »


有效的沟通,如忍者的最后一击!


《神经漫游者》——在这部同时获得“雨果奖”、“星云奖”和“菲利普·狄克奖”三大奖项的科幻作品之中,威廉·吉布森塑造了一位冷酷而性感的刀锋女战士——莫利。她出手迅捷,装备精良,几乎无所畏惧。然而,令她真正有所忌惮的,却是周身散发着冷静气息的忍者杀手。

阅读全文 »


技术的成长曲线


小李毕业后在一家公司做软件工程师,转眼间,一年多的时间已经过去了。

回想刚毕业那会,他是怀着无比忐忑的心情进入了这家公司的技术部门。各种新奇的开发工具,叫不上名字的众多软件框架,庞大的代码库,井然有序的工作流程,都是小李以前在学校里不曾遇到过的,这让他感到了前所未有的压力。于是,在开始的那半年,小李就像一株久旱的禾苗遇到了雨水,拼命地吸收着工作中遇到的每一点知识。他学习新的编程语言,学习新的开发工具,学习调试和解bug的技巧,也学习处理各种棘手的业务逻辑。虽然每天工作很累,但每天都是满满的收获。

阅读全文 »