跳至主要內容

Web服务器


Web服务器

Tengine

Tengine介绍

Tengine是由淘宝发起的Web服务器项目。它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性。Tengine的性能和稳定性已经在大型的网站如淘宝,天猫,优酷,全球速卖通,Lazada,阿里云等得到了很好的检验。Tengine将向通用API网关方向持续演进和发展,在HTTP应用流量入口网关的基础上,逐步支持4/7层TLS,TCP,UDP和GRPC多协议路由能力,适配不同终端和不同应用,打造全场景通用网关,持续保持Tengine业界领先地位。

Tengine特性

  • 继承Nginx-1.24.0的所有特性,兼容Nginx的配置;
  • 支持域名,证书,路由的动态无损生效;
  • 支持HTTP/3 (QUIC v1和draft-29);
  • 支持bypass内核的用户态高性能UDP转发;
  • 支持基于header,cookie,query和服务权重的高级路由动态无损生效;
  • 支持基于高级路由的请求和响应流量染色动态无损生效;
  • 支持配置分域名TLS多版本,timeout,强制HTTPS,CORS和robots的动态无损生效;
  • 支持HTTP的CONNECT 方法,可用于正向代理场景;
  • 增强相关运维监控能力,比如异步打印日志及回滚,本地DNS缓存,内存监控等;
  • 流式上传到HTTP后端服务器或FastCGI服务器,大量减少机器的I/O压力;
  • 支持异步OpenSSL,可使用硬件如:QAT进行HTTPS的加速与卸载;
  • 更加强大的负载均衡能力,包括一致性hash模块,会话保持模块,还可以对后端的服务器进行主动健康检查,根据服务器状态自动上线下线,以及动态解析upstream中出现的域名;

Tengine安装

下载:tengine-3.1.0版本

## 编译安装
# 安装依赖
yum install -y gcc pcre pcre-devel openssl openssl-devel 

# 解压
tar zxf tengine-3.1.0.tar.gz
cd tengine-3.1.0

# Tengine默认将安装在/usr/local/nginx目录。你可以在configure中用'--prefix'来指定你想要的安装目录。
./configure
make
make install

Tengine配置

参考Nginx配置即可。

OpenResty

OpenResty介绍

OpenResty 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。

OpenResty安装

示例在CentOS7 x86_64架构服务器上,安装openresty-1.21.4.3版本:

启动openresty服务及常用命令:

# 启动服务
systemctl start openresty

# 开机自启动
systemctl enable openresty

# 停止服务
systemctl stop openresty

# 重启服务
systemctl restart openresty

OpenResty配置和使用

OpenResty默认情况下的相关配置目录如下:

  • 配置文件:/usr/local/openresty/nginx/conf/nginx.conf
  • 配置修改后重新加载命令:openresty -s reload

具体的配置和使用方式和Nginx类似,请参考Nginx即可。

TongHttpServer

TongHttpServer介绍

东方通TongHttpServer是一款高性能的服务代理中间件,支持OSI四层七层协议,可作为静态资源服务器、正向代理服务器、反向代理服务器、负载均衡服务器使用,支持带权轮询、IP哈希、最小连接、随机、哈希等多种负载均衡算法,满足企业构建高可用、高扩展性、高性能的应用服务集群需求。

img.png

img_1.png

产品优势

  • 运维便捷:提供可视化的管理控制台,对服务器资源消耗、集群并发情况一目了然。
  • 高安全性:支持国际https、国密https加密传输数据,防止数据在传输过程中被恶意窃听、篡改。
  • 高可靠性:通过IP漂移、VRRP协议支持主备切换,防止自身单点故障导致集群不可用。
  • 高性能:采用零拷贝、多进程、缓存等技术,有效提高服务器性能,支持上万连接同时接入。

产品亮点

  • 平滑升级配置:修改完配置后无需重启,通过热加载命令完成配置升级,不中断正常业务。
  • 实时统计:基于内存实时统计集群/节点并发、流量、每秒请求数等,通过接口输出,便于集成。
  • https自适应:在同一端口同时支持国密https、国际https,根据客户端请求进行自动切换。

产品功能

  • 负载均衡:提供带权轮询、IP哈希、最小连接、随机、哈希等多种负载均衡算法,根据配置的策略将请求分发到后端应用服务器节点。
  • 动静分离:提供基于正则的URI路由匹配,可实现将动态请求转发到应用服务器、静态资源不转发,实现动静分离,有效提高集群吞吐率。
  • 反向代理:根据不同的URI将请求反向代理到不同应用服务器或不同的应用服务器集群,对客户端隐藏后端应用服务器信息。

TongHttpServer架构

img.png

产品设计采用模块化设计,分为高可用模块、管理服务模块、主程序模块,高可用模块用于防止主程序模块发生单点故障,管理模块用于配置管理系统。反向代理、负载均衡由主程序模块完成,该模块使用Master-Worker设计,管理进程实时监控工作进程是否异常,工作进程处理具体业务,该设计除了能充分利用服务器资源提升并发能力外,还能提升主程序的稳定性。

TongHttpServer安装配置

获取安装包

从东方通支持人员获取安装包、试用License等。

安装配置

参考:TongHttpServer v6.0用户手册.pdf