RethinkDB发布了其2.3版本的开源数据库,这次发布对JavaScript驱动程序进行了升级,并带来了新功能网络加密。
开发者传道士Ryan Paul在题为 《RethinkDB 2.3:用户账户、网络加密、支持Windows平台运行》 的文章中称,由于引入了TLS的支持,这次称为Fantasia的升级使得“对客户端驱动协议和在一个集群中的数据库服务器之间的通信进行线上加密”。
2.3版本同时也“带来了对RethinkDB基于web的管理用户界面的加密,因此你现在可以使用HTTPS URL进行访问,” Paul解释说不同于传统的RethinkDB部署,升级后的版本不再需要在相同的封闭网络内的数据库服务器中运行应用程序服务端。
对Fantasia发布的分布式数据库来说,JavaScript驱动程序包含 cursor.eachAsync函数 的新变量。在这之前,开发者如果要关闭指针需要用cursor.close(),数据库也不会调用任何回调来表示指针已经关闭。
JavaScript驱动程序的升级还包括了 cursor.eachAsync 的新并发选项以及 r.min(a, b) r.max(a, b) 变量升级。之前开发者使用的r.expr([a, b]).min()在升级后变为r.min([a, b]) and r.max([a, b])。
InfoQ在二月份曾宣布RethinkDB推出基于 Windows平台 的数据库,功能与Linux和OS X平台的数据库相同。在这次Fantasia发布中,Windows平台数据库正式推出beta版本。Paul说,虽然你不会将数据部署生产环境中,“对于想要在Windows系统的电脑上搭建RethinkDB应用程序的开发者来说,这是一个很好的选择”。
RethinkDB 2.3中改进了数据库的ReQL查询语言。最值得大家关注的是一个称为fold的新指令,工程总监Daniel Mewes描述它为“你可以实现更有效地流内状态转换。”Paul进一步补充道:“它在命令流上进行了类似reduce的操作,并基于当前累加器状态,可支持发送值的数据流。”
在HackerNews上,社区对于2.3版本的发布大多都 持积极态度 。
用户 asher_ 评论道
这是一次很棒的发布!感谢所有的开发者!Fold指令的推出让我开始将RethinkDB视为一个事件源系统。现在会有人这样使用它吗?另外,folds指令对改变的反馈有用吗?如果是这样的话,那这对于事件源系统来说非常具有优势。
用户v3ss0n 回复说
是的,你可以在这里看到我们的原型产品: http://phwa.be ,这是一个实时多媒体聊天室,使用不同的方法对markdown全支持。它使用了eventsource+rethinkdb,我对于fold指令非常期待。 我们还在搭建一个实时移动市场,它将会成为我们主要的启动项目。
RethinkDB是一个开源、可扩展的JSON数据库。使用RethinkDB的开发者可实时持续推送查询结果到应用程序中去,而不是轮询查询。
查看英文原文: Rethink DB 2.3 Brings Network Encryption and ReQL Updates
感谢张龙对本文的审校。
给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ,@丁晓昀),微信(微信号: InfoQChina )关注我们。