淘宝 Web 服务器 Tengine 正式开源

简介: 我们很高兴的宣布由淘宝网核心系统部开发的Tengine服务器终于正式开源了。 淘宝网是亚洲最大的电子商务 网站,Alexa全球排名第12位。每天访问淘宝网的PV超过了几十亿。大压力的访问,对淘宝网的Web服务器提出了严苛的要求。

我们很高兴的宣布由淘宝网核心系统部开发的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上的更多 工作进展。

目录
相关文章
|
4月前
|
中间件 Java 应用服务中间件
Windows部署web应用服务器Jboss中间件
如何在Windows系统上部署JBoss 7.1作为Web应用服务器,包括配置环境变量、自动部署WAR包、访问JBoss控制台、设置管理员账户以及修改端口和绑定地址等操作。
134 1
|
29天前
|
人工智能 前端开发 计算机视觉
Inpaint-Web:纯浏览器端实现的开源图像处理工具
在刷短视频时,常看到情侣在景区拍照被路人“抢镜”,男朋友用手机将路人“P”掉,既贴心又有趣。最近我发现了一个纯前端实现的开源项目——inpaint-web,可在浏览器端删除照片中的部分内容,非常酷。该项目基于 WebGPU 和 WASM 技术,支持图像修复与放大,已在 GitHub 上获得 5.1k Star。项目地址:[GitHub](https://github.com/lxfater/inpaint-web)。
59 3
 Inpaint-Web:纯浏览器端实现的开源图像处理工具
|
4月前
|
缓存 NoSQL 数据库
高性能Web服务器架构设计
【8月更文第28天】在当今互联网时代,网站的响应速度直接影响用户体验和业务成功率。因此,构建一个高性能的Web服务器架构至关重要。本文将从硬件配置、软件架构以及网络设置三个方面探讨如何提高Web服务器的性能,并提供一些实际的代码示例。
271 0
|
4月前
|
开发框架 缓存 .NET
并发请求太多,服务器崩溃了?试试使用 ASP.NET Core Web API 操作筛选器对请求进行限流
并发请求太多,服务器崩溃了?试试使用 ASP.NET Core Web API 操作筛选器对请求进行限流
223 0
|
26天前
|
XML 前端开发 JavaScript
PHP与Ajax在Web开发中的交互技术。PHP作为服务器端脚本语言,处理数据和业务逻辑
本文深入探讨了PHP与Ajax在Web开发中的交互技术。PHP作为服务器端脚本语言,处理数据和业务逻辑;Ajax则通过异步请求实现页面无刷新更新。文中详细介绍了两者的工作原理、数据传输格式选择、具体实现方法及实际应用案例,如实时数据更新、表单验证与提交、动态加载内容等。同时,针对跨域问题、数据安全与性能优化提出了建议。总结指出,PHP与Ajax的结合能显著提升Web应用的效率和用户体验。
40 3
|
2月前
|
Java PHP
PHP作为广受青睐的服务器端脚本语言,在Web开发中占据重要地位。理解其垃圾回收机制有助于开发高效稳定的PHP应用。
【10月更文挑战第1天】PHP作为广受青睐的服务器端脚本语言,在Web开发中占据重要地位。其垃圾回收机制包括引用计数与循环垃圾回收,对提升应用性能和稳定性至关重要。本文通过具体案例分析,详细探讨PHP垃圾回收机制的工作原理,特别是如何解决循环引用问题。在PHP 8中,垃圾回收机制得到进一步优化,提高了效率和准确性。理解这些机制有助于开发高效稳定的PHP应用。
53 3
|
4月前
|
JavaScript 搜索推荐 前端开发
从零搭建到部署:Angular与Angular Universal手把手教你实现服务器端渲染(SSR),全面解析及实战指南助你提升Web应用性能与SEO优化效果
【8月更文挑战第31天】服务器端渲染(SSR)是现代Web开发的关键技术,能显著提升SEO效果及首屏加载速度,改善用户体验。Angular Universal作为官方SSR解决方案,允许在服务器端生成静态HTML文件。本文通过具体示例详细介绍如何使用Angular Universal实现SSR,并分享最佳实践。首先需安装Node.js和npm。
101 1
|
4月前
|
JSON 前端开发 JavaScript
Web中的客户端和服务器端
Web中的客户端和服务器端
203 1
|
4月前
|
监控 物联网 数据挖掘
PHP不仅在Web开发领域有着广泛的应用,其在服务器端的应用也非常重要
【8月更文挑战第4天】PHP不仅在Web开发领域有着广泛的应用,其在服务器端的应用也非常重要
60 8
|
4月前
|
前端开发 网络协议 物联网
Django Web:搭建Websocket服务器(入门篇)
Django Web:搭建Websocket服务器(入门篇)
102 1