redis集群为什么要ruby

Python013

redis集群为什么要ruby,第1张

因为在redis/src中有一个文件叫做redis-trib.rb,这个文件就是作者用Ruby写的,用来搭建redis集群(redis3.0版本时才开始支持集群),redis-trib.rb的后缀就是Ruby的简写,所以想要搭建redis集群需要有一个能执行.rb这种文件的运行环境,这个环境就是Ruby。

Ruby是一种功能强大的面向对象的脚本语言,她可以使您方便快捷地进行面向对象编程.有时使用像Smalltalk、Eiffel或C++这样正式的面向对象语言来开发一些小项目显得有点"小题大做",而Ruby刚好可以满足这些面向对象编程的需求.当然了,您也可以使用Ruby进行普通的面向过程编程. Ruby的文本处理能力极强,与Perl不分伯仲.同时,Ruby的语法简单,还有异常处理以及迭代器等构造,使编程变得简单明了. 简而言之,您可以像使用Perl一样方便快捷地进行面向对象的开发

我不知道多大比例的新网站是用python或者ruby,不过我们扇贝网是基于Python开发的。

主要原因还是开发速度。以我的经验,完成类似的任务,Python的代码量是Java的一半,更少的代码量就意味更快的开发速度和更少出错的几率。

另外我很喜欢Python的语法,基本上就是伪码形式的(譬如算法导论上的伪码几乎可以机械式的翻译成Python),以至于我有时候写程序的时候准备先随便写几行整理下思路,但是写着写着发现居然写完了。

另外从招聘角度而言,一般会Python语言的编程基础都还不错,减少了筛选。

最后一条,当然可能是所有动态语言都有的,就是改bug快,不管什么设备,只要有个ssh客户端就可以。有一次在外面吃饭,突然看到微博上用户报了一个错误,就立刻用手机(现在改iPad了)登录跑服务器看log,发现程序错误后,直接做一个hotfix分支(我们用git管理代码),然后用vi 改代码,改好后没问题合并回主分支,然后立刻重新部署。