Tengine是一个由淘宝核心系统开发部开发的HTTP伺服器[3],现时版本为3.1.0[4]。Tengine基于Nginx 1.0.10开发,二者配置兼容[5]。2011年11月29日,Tengine宣布开源[5]。由于Tengine从Nginx复刻出来后,也不断从Nginx继承其更新,所以目前的版本兼容Nginx最新版1.8.1的所有特性,亦有HTTP2模块同步于Nginx 1.11.6[1]。据W3Techs的统计,截止2024年6月,Tengine的市场占有率为0.1%[6]

tengine
开发者淘宝(从Igor Sysoevnginx复刻
首次发布2011年11月29日 (2011-11-29)[1][2]
当前版本3.1.0 (2023年10月27日,​13个月前​(2023-10-27
操作系统GNU/Linux
Unix
类型HTTP伺服器
许可协议自由软件 (BSD许可证)
网站官方网站

与Nginx的差异

编辑

淘宝的Tengine从原来的Nginx添加了下列各项内容[5]

  • 透过对上传到HTTP后端伺服器或FastCGI伺服器的请求整流,以及透过增加一致性hash模块、会话保持模块,加上对伺服器的主动健康检查,根据伺服器状态而自动加添或减少伺服器的实例,大量减少对伺服器机器的I/O压力,大大增强其负载均衡能力;
  • 支持动态模块加载(DSO)支持,透过把模块编译成为可共享程序库Shared Library英语Shared Library,令伺服器增添模块后无需再把整个伺服器程序重新编译[7]
  • CONCAT模块:受到Apache HTTP Servermodconcat功能启导,可将对多个CSS、JavaScript文件的访问请求合并成一个请求[2],以提高压缩比,减少数据流量;
  • 输入过滤器主体,以更方便地管理在防火墙和事件到HTTP级别之间的连接。
  • Sysguard模块[8],当伺服器的性能指标(例如响应时间、CPU使用率等)超出设定阈值时,限制用户请求以保护系统。

上列内容主要是从处理请求的效率及扩展性的增润。这些修正部分已被Nginx接纳。

主要用户

编辑

参考文献

编辑
  1. ^ 1.0 1.1 taobao.org (编). 变更列表. [2018-04-27]. (原始内容存档于2018-04-27) (中文(简体)). 
  2. ^ 2.0 2.1 淘宝Web服务器Tengine正式开源. 2011-12-02 [2015-05-26]. (原始内容存档于2012-01-07) (中文(简体)). 
  3. ^ 淘寶將 Web Server Open Source - Tengine. 2011-11-29 [2015-05-13]. (原始内容存档于2015-05-26). 
  4. ^ 阿里巴巴集团. 变更列表. The Tengine Web Server. [2024-06-03] (cn). 
  5. ^ 5.0 5.1 5.2 taobao.org (编). 简介. [2018-04-27]. (原始内容存档于2018-04-27) (中文(简体)). 
  6. ^ Nginx和Tengine比較. W3Techs.com. [2018-04-27] (英语). 
  7. ^ A use case of Tengine, a drop-in replacement and fork of nginx [使用Tengine的案例:一个可直接取代nginx的复刻]. 2014-06-21 [2015-05-26]. (原始内容存档于2015-05-26) (英语). 
  8. ^ 阿里巴巴集团. sysguard 模块. The Tengine Web Server. [2024-06-03] (cn). 
  9. ^ Alexa (编). taobao.com. [2018-04-27]. (原始内容存档于2009-04-07) (英语). 
  10. ^ Alexa (编). aliexpress.com. [2018-04-27]. (原始内容存档于2018-04-27) (英语). 

外部链接

编辑