我们很高兴的宣布由淘宝网核心系统部开发的 Tengine 服务器终于正式开源了。
淘宝网是亚洲最大的电子商务网站,Alexa 全球排名第 12 位。每天访问淘宝网的 PV 超过了几十亿。大压力的访问,对淘宝网的 Web 服务器提出了严苛的要求。经过一系列的对比,我们最终选择了 Nginx 作为我们的 Web 服务器,因为它性能高,又非常节省资源(CPU 和内存),并且有足够的灵活性。
一开始我们使用 Nginx 还仅仅用它来处理静态文件、PHP 等,接着我们又在 Nginx 上开发了几十个各种用途的模块。随着对 Nginx 的越来越了解,我们发现它本身已经不能够完全满足我们的需求了,所以我们就开始对 Nginx 核心进行定制和开发。考虑到我们开发的功能中的一些对其它的互联网用户也可能有用处,所以我们就想到了把这些公用的功能开源出来。淘宝网是开源软件的用户和受益者,我们也想成为开源软件的贡献者。这就是我们决定开源 Tengine 的原因。
Tengine 基于最新的 Nginx 稳定版(Nginx-1.0.10),在它的基础上开发了一些功能和做了一些 bug 修复,比如:
- 组合多个 CSS、JavaScript 文件的访问请求变成一个请求;
- 支持管道和 syslog 形式的日志和抽样;
- 自动根据 CPU 数目设置亲缘性;
- 监控系统的负载和资源占用从而对系统进行保护;
- 显示对运维人员更友好的出错信息,便于定位出错机器;
- 更强大的访问速度限制模块;
- backtrace 模块,程序崩溃的时候可以显示出错的调用栈;
- 根据文件类型设置过期时间;
- …
基本上,Tengine 可以被看作一个更好的 Nginx,或者是 Nginx 的超集。您可以在这里下载:
http://tengine.taobao.org/download/tengine-1.2.0.tar.gz
在这里,我们想向 Nginx 团队致谢,尤其感谢 Nginx 的作者 Igor Sysoev 的伟大工作。我们也很乐意并在接下来的时间里将我们的工作成果捐献给 Nginx 官方。
坦率的讲,现在 Tengine 的特性还不够多,但这是我们将我们在 Nginx 上的工作推向开源的第一步。我们已经围绕 Tengine 组建了一个团队,而且内部还有一个很长的计划列表。Tengine 开源不是项目开发的结束,而是开发的开始。相信接下来大家会看到我们在 Tengine 上的更多工作进展。