谈谈开源软件的选择

11/05/2014 update:
博客写完之后根据往常直接同步到了 weibo 上,结果反响比较大,一小部分是敢跳出来喊支持的(毕竟软件作者也在 weibo 上,站队要正确),非常难能可贵,一半是完全中庸的态度,另外一半是大喷特喷,或者说是满嘴跑火车更恰当些。
写这篇博客的目的有二:

  1. 回答题目的问题,如何选择可能靠谱的开源产品
  2. 毫不避讳,结合上面的几点,谈谈最近用的 tcpcopy 遇到的诸多问题,证明 tcpcopy 还有很大的提升空间

对于那些满嘴跑火车的同学,建议你,仅仅是建议而已:

  1. 把全文好好看完
  2. 多看看外面的世界,别把自己限死在狭小的空间里面

还想继续乱喷的,[email protected] 说的话咱们再继续。

很意外的是,最近两天收到了几封邮件,让满嘴跑火车的同学失望的是,他们不是来继续喷的,相反,他们都表达了非常正面的观点。邮件的结尾都差不多,让我加个 QQ 交个朋友,交朋友本是件好事,但是,我这篇博客已经说的很清楚,相比 QQ(基本不用),我更偏向使用 gmail、gtalk、twitter 交流。所以,善意的提醒下,RTFB(read the friendly blog:)还是很重要的。如果有什么想交流,about/ 页面有我的联系方式,非常欢迎。


先说点背景,对一款开源软件评估,也就是最终用还是不用,无外乎从这几个方面入手。
1. 技术层面,这也是最基础的一层,即这款工具、软件是否符合你的需求,比如是否需要跨平台,是否对性能有很高的要求,是否对安全有很高的要求等等。
2. 文档,现在不少的开源软件动不动就冒出高性能(high performance),简单易用(easy to use),比竞争对手更强大的字眼,试问连个详细的文档说明都没有,跑的个 demo 连背景环境配置都没有,你敢用吗?
3. 代码整洁,有注释,尤其是后者,github 上不少代码都是从头写到尾,一行注释都没有,这个不但给自己挖坟,也给用户带来了非常多的不便。
4. 更新频率,如果最近一次更新是 5 年前,是不是要考虑下有没有用的必要。当然这个并不绝对,不少最新的稳定版本都是 3 年前甚至 5 年前的,对应的开发版本倒是蛮活跃的。另外,如果是刚刚仅仅出来了几个月的新产品,还是慎重考虑一下。
5. 社区,这个是重中之重。
5.1. 用户数量,github 某个项目如果没几个人 star,是不是需要慎重考虑下。
5.2. 参与程度,半年才提一个 issue,mail list, irc 几天都没条消息的还是暂时不要考虑了。
5.3. 用户参与方式,使用 QQ、旺旺这种娱乐软件参与开源社区确实是件荒唐的事情,这类参与方式无法将信息公开的被搜索引擎收录,并且基本上将用户群体限制在了一个非常狭小的中文社区里面。mail list、google group 之类的比他们好用更重要的是开放的多。
5.4. commit 的人数,如果常年就一人更新,想想万一哪天他不在了,你们线上的服务怎么办?
5.5. 开源软件许可,这个一般自己用都没什么大问题。

Continue reading

使用 Google spreadsheets 画图并分析问题

之前也经常使用 Spreadsheets,但是仅仅是一些简单的数据处理外加一些简单的函数,直到我们想分析某个时段具体的 return code 情况,我突然想看看 Spreadsheets 能否直接出图。后来发现是可以的,只要以 add-ones 的形式添加一个叫 "QuickFit" 的插件就可以了。
这是除了 gnuplot 之外的另外一选择,优势是美观漂亮。
比如我们通过 zbx 拿到的 4xx、5xx 分析具体的错误类型。

通过
Spreadsheets,加入各个时段的数据,就能得到下面的图形

再进行下面的分析,看图一目了然,简单多了:-)

kindle Fire & kindle PaperWhite

12 年托我司 CTO 从 US 带了台 Kindle Fire 回来。用了两年了,实话说,体验不是很好,首先太重,其次太厚,最后归结起来就是拿在手里不舒服,尽管是一个深度定制过的 Android,我用到的功能寥寥无几,主要就是看书,其他什么照片电影包括各种 app 的安装我基本没碰过。在 Fire 上看过的书应该不超过 10 本,之前也妄想在上面看看专业方面的文档,后来发现完全行不通,连基本的高亮做笔记的功能都没有。
年初公司发了台 PaperWhite,虽然价格只有 Fire 的一半不到,但是使用起来却比 Fire 好的多。当年向 @HDWei 借个 Kindle 3 体验了个把月,除了翻页比较慢,需要配备一个外置的阅读灯之外,整体感觉还觉还是蛮爽的。现在 PaperWhite 修正了以上的缺点,内置的阅读灯晚上熄灯看书非常方便,机身比 3 也轻不少。没理由不喜欢它,推荐。


阿里云靠不靠谱

偶然的机会看到博客园在用阿里云的服务,大致跟进了一下,惨不忍睹。

从工程的角度来说,博客园这里分享的每一篇博客都蛮有价值的,大家不妨学习下。博客园也是个悲剧,正如他自己说的「正确的糟糕选择」。整的来说,阿里云这几年肯定是在不断的进步的,这个是毋庸置疑的,但是绝对值有多大我不清楚。AWS 前几年也是故障频出,aliyun 出点故障也算正常,但是我是肯定不会用的。

1000 天的日日夜夜

11 年的 7 月 10 号来到这里,一周之后的晚上,跟我们 CTO 以及另外一个 TL 一起开始了我们第一个正式 IDC  的「破土动工」,机器是不会说谎的,下图是我们第一台交换机的信息。

May 22 2014 是我们第一台线上机器跑到 1000d 的日子,这是目前我们仅有的三台跑着 CentOS 5.6 2.6.18-238.el5xen 的机器;另外,也是三台仅有的跑着 xen 的机器,当年曾经穷的把 LVS 放在这上面跑。如果不是 208.5d 的 bug,估计同一时段会有很多的机器跑到 1000d,现在同时期上的那批机器不少都跑到了 600、700d。

三年时间发生了很多事,很多有趣的事,不少悲伤的事,没有永远的朋友也没有永远的敌人,只有共同的利益。