I'm starting to provide Chinese / English versions of some articles, switch with the Language menu above. 我开始提供部分文章的中文、英文翻译,请使用顶部语言菜单切换。

Tengine 网页服务器编译以及安装

Tengine 是阿里巴巴基于 nginx 开发的一款高性能网页服务器,除了保留 nginx 原有的高性能特性外,还增加了这堆东西:

继承 Nginx-1.2.9 的所有特性,100% 兼容 Nginx 的配置; 动态模块加载(DSO)支持。加入一个模块不再需要重新编译整个 Tengine; 输入过滤器机制支持。通过使用这种机制 Web 应用防火墙的编写更为方便; 动态脚本语言 Lua 支持。扩展功能非常高效简单; 支持管道(pipe)和 syslog(本地和远端)形式的日志以及日志抽样; 组合多个 CSS、JavaScript 文件的访问请求变成一个请求; 更加强大的负载均衡能力,包括一致性 hash 模块、会话保持模块,还可以对后端的服务器进行主动健康检查,根据服务器状态自动上线下线; 自动根据 CPU 数目设置进程个数和绑定 CPU 亲缘性; 监控系统的负载和资源占用从而对系统进行保护; 显示对运维人员更友好的出错信息,便于定位出错机器; 更强大的防攻击(访问速度限制)模块; 更方便的命令行参数,如列出编译的模块列表、支持的指令等; 可以根据访问文件类型设置过期时间;

虽然对于普通用户没什么区别,但是拿来玩玩还是不错的,听说土豆还是 56 已经用上 Tengine 了。

下面是编译步骤。

./configure --prefix=/usr --enable-mods-shared=all --with-rtsig_module --with-select_module --with-poll_module --with-file-aio --with-ipv6 --with-http_realip_module --with-http_addition_module --with-http_xslt_module --with-http_image_filter_module --with-http_geoip_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_slice_module --with-http_mp4_module --with-http_gzip_static_module --with-http_concat_module --with-http_random_index_module --with-http_secure_link_module --with-http_degradation_module --with-http_sysguard_module --with-http_lua_module --with-http_tfs_module --with-mail --with-mail_ssl_module --with-google_perftools_module --with-cpp_test_module --with-backtrace_module --with-pcre --with-pcre-jit --with-md5-asm --with-sha1-asm --with-libatomic --with-jemalloc

插一句:因为 Tengine 是模块化的,所以自然地我们就把模块多开一点,反正动态加载。如果看哪个模块不顺眼不想要,把对应的 with。。。删掉就可以。

如果 configure 报错,一般是少 libxxx,直接到新立得软件包管理去搜就行了。安装时要安装 - dev 包,原始包也会自动安装。

make -j4
sudo make install

安装完成。命令行输入 nginx 启动。Tengine 配置与 nginx 类似,可以参考 nginx 相关文档。

« 上一篇文章
Hitokoto 一句话吐槽

本站使用运行在 Vercel 上的 Waline 评论系统,中国大陆访问可能不稳定。