Disque 1.0 RC1 发布!
原文由 Salvatore Sanfilippo 于 发布,订阅该博客
今天很高兴地宣布,Disque 1.0 的首个候选发布版已经可用。
如果你还不了解 Disque 是什么,最好的入门方式是阅读 GitHub 项目页面上的 README:http://github.com/antirez/disque。
Disque 归根结底只是一款软件,因此它的实际价值可大可小,取决于它能为使用者带来多少有用的东西。但对我而言,它有着超越其物质形态本身的巨大价值。那就是去设计、去实现一件你在乎的事情的价值。这正是编程的魔力:原本一无所有,如今却有了一个能运行、能被他人分析、运行和使用的东西。
分布式系统是一个美妙的领域。得益于 Redis,以及那些以各种方式给予我指导的人们,我得以接触分布式系统。我想把这份热爱转化为某种具体的东西。一个全新的、小巧的系统,从零开始设计,不带偏见,也不去过度参考其他类似系统的做法。与 Redis 打交道的经历让我意识到,消息代理是一个非常有趣的课题,并且在某种意义上,它是应用分布式系统概念的完美课题。我甚至觉得消息代理可以是有趣而令人兴奋的。于是我尝试设计了一个新的消息队列,Disque 便是成果。
Disque 的设计目标是提供具有良好用户体验的系统:在消息传递的场景下提供清晰易懂的保证,并提供极致的运维简洁性。RC1 提供了基础,但仍有更多工作要做。首先,我希望 Disque 能由 Aphyr 通过 Jepsen 进行深入测试。由于 Disque 是一套提供特定保证、且这些保证可被检验的系统,如果它在某些测试中失败,就直接意味着存在需要修复的缺陷,这将有助于打造一个更好的系统。
在运维层面,还需要在真实环境中对其进行检验。依我看,AP 与消息队列的结合是实现运维健壮性的绝佳搭配。不过我并不抱有不切实际的幻想,认为首个版本就已尽善尽美,因此要*真正*达到我所追求的运维简洁性,还需要数月(甚至数年?)的迭代。此外,这个 RC1 在最近几周经历了大幅修改,我预计其中仍会有不少缺陷。
从打造一个有趣且令人兴奋的系统的角度出发,我力求提供一个简单小巧的 API,它不会迫使用户去思考*这一特定*实现的细节,而是更一般地思考他们所面临的消息传递问题本身。Disque 还提供了一系列内省能力,有助于让它不再是一个黑盒系统,而是真正可以被调试和观测的系统。
尽管新代码和新想法总有诸多局限,这个 RC 版本仍是迈出的重要第一步,我很高兴 Disque 没有沦为我们程序员那些有始无终的业余项目之一。
在过去几个月里钻研 Disque、琢磨如何塑造它的过程中,我并非孤军奋战,得到了以下人士和团队的帮助:He Sun、Damian Janowski、Josiah Carlson、Michel Martens、Jacques Chester、Kyle Kingsbury、Mark Paluch、Philipp Krenn、Justin Case、Nathan Fritz、Marcos Nils、Jasper Louis Andersen、Vojtech Vitek、Renato C.、Sebastian Waisbrot、Redis Labs 和 Pivotal,可能还有更多我此刻未能想起的人。感谢你们的帮助。
RC1 已在 Disque 的 GitHub 仓库中打上标签。祝使用愉快!
随机一篇博客
评论
登录后参与讨论