小知识:基于Nginx的衍生版服务器Tengine简介

Tengine是由淘宝网发起的Web服务器项目。它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性。Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检验。它的最终目标是打造一个高效、稳定、安全、易用的Web平台。

Nginx的特性:

1、基本的HTTP服务器特性

1.处理静态文件,索引文件以及自动索引;打开文件描述符缓存

2.使用缓存加速反向代理;简单负载均衡以及容错;

3.远程FastCGI,uwsgi,SCGI,和memcached服务的缓存加速支持;简单的负载均衡以及容错;

4.模块化的架构。过滤器包括gzip压缩、ranges支持、chunked响应、XSLT,SSI以及图像缩放。在SSI 过滤器中,一个包含多个SSI的页面,如果经由FastCGI或反向代理处理,可被并行处理;

5.支持SSL,TLS SNI。

2、其他的HTTP服务器特性

1.基于名字和IP的虚拟主机;

2.Keep-alive和pipelined连接支持;

3.灵活的配置;

4.重新加载配置以及在线升级时,不需要中断正在处理的请求;

5.自定义访问日志格式,带缓存的日志写操作以及快速日志轮转;

6.3xx-5xx错误代码重定向;

7.重写(rewrite)模块:使用正则表达式改变URI;

8.根据客户端地址执行不同的功能;

9.基于客户端IP地址和HTTP基本认证机制的访问控制;

10.支持验证HTTP referer;

11.支持PUT、DELETE、MKCOL、COPY以及MOVE方法;

12.支持FLV流和MP4流;

13.速度限制;

14.来自同一地址的同时连接数或请求数限制;

15.嵌入Perl语言。

3、邮件代理服务器特性

1.使用外部HTTP认证服务器重定向用户到IMAP/POP3后端;

2.使用外部HTTP认证服务器认证用户后重定向连接到内部SMTP后端;

3.支持的认证方式:

 3.1).POP3: USER/PASS, APOP, AUTH LOGIN/PLAIN/CRAM-MD5;

 3.2)IMAP: LOGIN, AUTH LOGIN/PLAIN/CRAM-MD5;

 3.3)SMTP: AUTH LOGIN/PLAIN/CRAM-MD5;

4.SSL支持;

5.STARTTLS和STLS支持。

Tengine的特性:

1.继承Nginx-1.4.7的所有特性,100%兼容Nginx的配置;

2.动态模块加载(DSO)支持。加入一个模块不再需要重新编译整个Tengine;

3.支持SPDY v3协议,自动检测同一端口的SPDY请求和HTTP请求;

4.流式上传到HTTP后端服务器或FastCGI服务器,大量减少机器的I/O压力;

5.更加强大的负载均衡能力,包括一致性hash模块、会话保持模块,还可以对后端的服务器进行主动健康检查,根据服务器状态自动上线下线;

6.输入过滤器机制支持。通过使用这种机制Web应用防火墙的编写更为方便;

7.支持设置proxy、memcached、fastcgi、scgi、uwsgi在后端失败时的重试次数

8.动态脚本语言Lua支持。扩展功能非常高效简单;

9.支持管道(pipe)和syslog(本地和远端)形式的日志以及日志抽样;

10.支持按指定关键字(域名,url等)收集Tengine运行状态;

11.组合多个CSS、JavaScript文件的访问请求变成一个请求;

12.自动去除空白字符和注释从而减小页面的体积

13.自动根据CPU数目设置进程个数和绑定CPU亲缘性;

14.监控系统的负载和资源占用从而对系统进行保护;

15.显示对运维人员更友好的出错信息,便于定位出错机器;

16.更强大的防攻击(访问速度限制)模块;

17.更方便的命令行参数,如列出编译的模块列表、支持的指令等;

18.可以根据访问文件类型设置过期时间;

架构和扩展性(Nginx)

1.一个主进程和多个工作进程,工作进程以非特权用户运行;

2.支持的事件机制:kqueue(FreeBSD 4.1+)、epoll(Linux 2.6+)、rt signals(Linux 2.2.19+)、/dev/poll(Solaris 7 11/99+)、event ports(Solaris 10)、select以及poll;

3.众多支持的kqueue特性包括EV_CLEAR、EV_DISABLE(临时禁止事件)、NOTE_LOWAT、EV_EOF,可用数据的数量,错误代码;

4.支持sendfile(FreeBSD 3.1+, Linux 2.2+, Mac OS X 10.5+)、sendfile64(Linux 2.4.21+)和sendfilev(Solaris 8 7/01+);

5.文件AIO(FreeBSD 4.3+, Linux 2.6.22+);

DIRECTIO (FreeBSD 4.4+, Linux 2.4+, Solaris 2.6+, Mac OS X);

6.支持Accept-filters(FreeBSD 4.1+, NetBSD 5.0+)和 TCP_DEFER_ACCEPT(Linux 2.4+);

7.10000个非活跃的HTTP keep-alive连接仅占用约5M内存;

8.尽可能避免数据拷贝操作。
声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:Linux内核学习与问题定位,这个工具一定要掌握

2023-5-6 4:10:08

建站知识

小知识:Linux上如何清除RAM内存高速缓存,缓存和交换空间

2023-5-6 4:18:42

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索