今天翻了一下 Antirez 早年的博客,发现了这样一篇介绍 redis 进展的好文章,写于 2010 年,居然长期以来都没有被翻译成中文,所以我就不客气了。故事发生在 Redis 红火不久,作者急切寻找一个靠谱的金主来支持 Redis 的可持续开发。
大约 1 年前,Redis 还只是内部项目,没有任何开源的计划。它不过是用来解决 web 应用程序扩容时遇到的一系列让人棘手的问题而已(应该是用户会话缓存)。
但是开源对我来说实在太有吸引力了,我根本无法抗拒这样的诱惑。我可是已经在开源界活跃了 10 年了(元老)。把代码就放在个人硬盘上实在是一种浪费。所以几周之前我就把 Redis 开源了,发布了它的第一个公开版本。结果很快一堆 Redis 用户就来了。这又促使我继续为 Redis 增加更多的特性,同时还要保证代码更加稳定。
最近一段时间我有点不务正业,我为 Redis 付出的努力超出了我的本职工作——我是两家小公司的联合创始人,在这里我和朋友们制作 web 应用程序和 ios app。
不过今年以来好事就接连不断,我发现 Redis 越来越流行,我又从中学习了好多好多东西。我看到了 Redis 社区规模越来越大,很多对 Redis 感兴趣的朋友们都在争先恐后地分享他们的知识。但是这一切对于我来说却变的愈发艰难,既要完成我的本职工作,还得继续开发 Redis。开始 Redis 不过是我的个人爱好,代码很简短。但是现在它却逐渐变的复杂,而且还在继续添加一些特色功能,例如 SortedSet、虚拟内存和 AOF 持久化。
有一点必须谨记,Redis 是一个「数据库」。当你收到一个 bug 报告时,它可不是那种“ flash 视频播放崩溃了!”这种类型的客户端 bug。有很多商业公司在使用 Redis,里面放的是实打实的业务数据。你必须马上解决掉这个 bug,你需要提供非常稳定的代码。这就是我所理解的 Redis 开发工作,它的用户和消费者可不是那些只是想把你的代码拉下来跑一跑的极客程序员们。
有几个原因让我不得不为 Redis 寻找一个可行的商业模型。我并不想提供商业顾问服务,或者为一些特别的公司开发一些定制化的 Redis 版本。我更想做的事是继续在 Redis 上捣鼓一些非常 hack 的东西(通用的),而不是要让它来适应五花八门的实际应用场景。
我需要一个以产品为基础的商业模型(需要挣钱养活自己),但是如果不把 Redis 闭源了,还有其它更好的解决方案么?
我的答案是制作一些 Redis 工具包,这些工具包可以让我们更加方便地监控 Redis 的工作状态。我要把这些工具包卖出一个好价钱,这样我就可以有足够的收入来源来支撑我全职开发 Redis 了。
但是要开发一个商业级别的工具谈何容易。你要为客户们编写完善的操作文档,仅仅是完成最基础的逻辑功能开发都不是那么一丁点的工作量。再说想把这样的工具卖给一大堆的客户就更难了,它的潜在消费者一般都是那些 Redis 使用非常严谨的公司。
幸运的是有很多公司都在主动联系我,希望可以雇佣我来全职开发 Redis。这几周以来,我陷入了困兽之斗。到底是继续为 Redis 寻找一个可行的商业模型,虽然希望极为渺茫,还是选择加入一个靠谱的公司继续把 Redis 发展到一个新的里程碑呢?
有一个非常直接的原因我选择了 VMWare 作为 Redis 的大本营是源于跟他们做了一次愉快的交流——关于虚拟机的内部实现。
哈哈,没错,VMWare 是一家技术非常强大的公司,里面有很多同行每天都在做着和我差不多的工作。他们也很想了解 Redis 内部实现的细节、应用场景还有进一步的优化方案等等。
另外一个很重要的原因就是 VMWare 对我承诺今后会让 Redis 更加开放。他们想让我继续开发 Redis,以一种更专业的方式来服务更多的开发者,这在之前我都是不敢想象的。
不止是 Redis 可以继续保持开源,Redis 工具也可以继续开源——这就是 VMWare 最初向我抛出的橄榄枝。
这也是为什么加入 VMWare 让我如此激动——我们可以继续一起努力让 Redis 发扬光大。
很感谢 VMWare 为我提供了这样的好机会。不过眼下 Redis 的开发工作会有那些进展呢?目前并不是很多,估计要到下一步等我有足够的时间和支持(money & tech)了。当前我会在西西里岛——我的家乡继续推进一些新功能,用我仅有的一点时间。也许你会觉得 Redis 作为一个年轻的开源项目已经足够稳定了,不过有了 VMWare 的支持,我们能在 Redis 的质量上做的更好。
还有一件事我非常享受,那就是花点时间打磨我的 Redis 书籍,我几个月之前就已经开写了。只不过时间过于紧张,所以一直未能完成。
有了 VMWare 的支持,一切皆有可能。我能保证你们(Redis 用户)也将尽快享受到我们的工作成果。
这可不是我一个人在意淫!不信,你们可以看看 VMWare 云计算部门 Derek Collison 的博文VMWare 成功招进来了 Redis 的核心开发者。^_^
本文节选之掘金在线技术小册Redis 深度历险,对 Redis 感兴趣请点击连接深入阅读Redis 深度历险
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.