Tengine特性

继承Nginx-1.6.2的所有特性,兼容Nginx的配置;

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

支持SO_REUSEPORT选项,建连性能提升为官方nginx的三倍;

同时支持HTTP v2协议和SPDY v3协议,可同时使用两种协议;

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

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

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

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

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

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

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

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

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

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

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

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

更强大的防***(访问速度限制)模块;

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

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

Tengine安装

Tengine TCP 负载均衡,tengine默认不支持tcp转发,所以编译时加入tcp模块,也支持动态加载模块。

下载的文件统一存放在目录里面,方便管理

mkdir /tools && cd /tools

wget https://src.fedoraproject.org/lookaside/pkgs/jemalloc/jemalloc-3.5.1.tar.bz2/

tar jxvf jemalloc-3.5.1.tar.bz2

cd jemalloc-3.5.1

./configure

make && make install

echo '/usr/local/lib' > /etc/ld.so.conf.d/local.conf

ldconfig

cd ..

下载tengine-2.1.1 和 tcp模块

下载 http://tengine.taobao.org/download/tengine-2.1.1.tar.gz

tar zxvf tengine-2.1.1.tar.gz

下载tcp模块

wget https://github.com/yaoweibin/nginx_tcp_proxy_module/archive/master.zip

unzip master.zip

打补丁

yum -y install patch

cd tengine-2.1.1

patch -p1 < /opt/software/nginx_tcp_proxy_module-master/tcp.patch

提示如下

patching file src/core/ngx_log.c

Hunk #1 succeeded at 69 (offset 3 lines).

patching file src/core/ngx_log.h

Hunk #1 succeeded at 30 (offset 1 line).

Hunk #2 succeeded at 38 (offset 1 line).

patching file src/event/ngx_event_connect.h

Hunk #1 succeeded at 33 (offset 1 line).

Hunk #2 succeeded at 45 (offset 2 lines).

开始配置编译安装

./configure --user=upload --group=upload --prefix=/opt/tengine --with-http_stub_status_module --with-http_ssl_module --with-http_realip_module --with-ld-opt="-ljemalloc" --add-module=/tools/nginx_tcp_proxy_module-master

make && make install

服务器操作系统优化

服务端还需要调整一下系统的参数,在/etc/sysctl.conf中:

net.core.somaxconn = 2048

net.core.rmem_default = 262144

net.core.wmem_default = 262144

net.core.rmem_max = 16777216

net.core.wmem_max = 16777216

net.ipv4.tcp_rmem = 4096 4096 16777216

net.ipv4.tcp_wmem = 4096 4096 16777216

net.ipv4.tcp_mem = 786432 2097152 3145728

net.ipv4.tcp_max_syn_backlog = 16384

net.core.netdev_max_backlog = 20000

net.ipv4.tcp_fin_timeout = 15

net.ipv4.tcp_max_syn_backlog = 16384

net.ipv4.tcp_tw_reuse = 1

net.ipv4.tcp_tw_recycle = 1

net.ipv4.tcp_max_orphans = 131072

/sbin/sysctl -p 生效

tengine简单安装_Tengine介绍和安装相关推荐

  1. docker安装rocketmq_RabbitMQ 介绍amp;安装

    什么是MQ 消息队列(Message Queue,简称MQ),从字面意思上看,本质是个队列,只不过队列中存放的内容是message而已. 其主要用途:不同进程Process/线程Thread之间通信. ...

  2. tengine简单安装_tengine安装指南

    tengine安装指南 之前小站一直跑在tomcat之上,外层并无其它WEB容器,最近一直想在servlet容器前在挂上一个web容器试试,看看是不是真的在处理静态文件上更有优势.关于WEB容器,选用 ...

  3. tengine简单安装_阿里云tengine的安装 -- by hzw

    先简单介绍一下,tengine是基于nginx开发出来的一款服务器软件,官方的解释是100%兼容nginx,我用阿里云CDN的时候发现,节点服务器也是用tengine的,可以看出tengine已经用在 ...

  4. Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令

    Linux系统Vi/Vim编辑器的简单介绍.安装/卸载.常用命令 1.介绍 vi(Visual Interface)编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下.由于不需要图形界 ...

  5. openresty开发系列10--openresty的简单介绍及安装

    openresty开发系列10--openresty的简单介绍及安装 一.Nginx优点 十几年前,互联网没有这么火,软件外包开发,信息化建设,帮助企业做无纸化办公,收银系统,工厂erp,c/s架构偏 ...

  6. 一、mongodb数据库系列——介绍和安装 简单使用 增删改查

    一.Mongodb的介绍和安装 学习目标 了解 非关系型数据库的优势 了解 mongodb的安装 1. mongodb的介绍 1.1 什么是mongodb mongodb 是一个功能最丰富的NoSQL ...

  7. tengine简单安装_树莓派使用宝塔面板安装LNMP环境

    书接上回,前面说到我被垃圾Rock 64搞的死去活来,索性在树莓派上装了Ubuntu 20.04 LTS. 为了方便配置V2Ray,我忙活了一天终于把LNMP环境搞定了.下面说说怎么搞的,避免后面再踩 ...

  8. ActiveMQ简单介绍以及安装

    ActiveMQ简单介绍以及安装   现实的企业中,对于消息通信的应用一直都非常的火热,而且在J2EE的企业应用中扮演着特殊的角色,所以对于它研究是非常有必要的. 上篇博文深入浅出JMS(一)–JMS ...

  9. Kylin快速入门系列(1) | Kylin的简单介绍及安装部署

      大家好,我是不温卜火,是一名计算机学院大数据专业大二的学生,昵称来源于成语-不温不火,本意是希望自己性情温和.作为一名互联网行业的小白,博主写博客一方面是为了记录自己的学习过程,另一方面是总结自己 ...

最新文章

  1. 第五讲 计算机体系结构 内存层次
  2. 不需要SAP请求号修改程序的方法
  3. toughradius 配置mysql_ToughRADIUS
  4. mysql复制的配置
  5. leetcode 1339. Maximum Product of Splitted Binary Tree | 1339. 分裂二叉树的最大乘积(树形dp)
  6. T T[] toArray(T[] a);
  7. 选择排序算法python
  8. HDU 3652 B-number (数位DP)
  9. python创建自定义函数is_number()来判断一个字符是否是数字
  10. 基于Vue.js的表格分页组件
  11. 四川大学网络教育计算机网考,四川大学网络教育学院课程考试试题-第一学期期末考试卷-计算机文化...
  12. for linux pdf转mobi_在Linux上,如何为Amazon Kindle转换各种电子书格式
  13. 关于联想硬盘保护卡还原卡同传不能连接无法登录的解决方法
  14. Inheritance: 'A' is an inaccessible base of 'B'
  15. Unity - RectTransform详解
  16. Material Theme UI 插件的下载安装与使用,免费版Material Theme UI 插件
  17. python 山脊图_Python提取DEM数据的山脊线代码
  18. 第一章 kotlin基础知识
  19. Android 高仿微信朋友圈动态, 支持双击手势放大并滑动查看图片。
  20. 手动Docker部署saber

热门文章

  1. PCL中可用的PointT类型
  2. 【坑爹升级】更新NVIDIA GeForce GTX Ti最新驱动,突然屏幕亮瞎我24K钛合金双眼。导致Fn+F2/F3、win+x无法控制笔记本电脑显示器亮度调整, 电源选项屏幕亮度也不见了!
  3. 在Ubuntu 16.04.3 LTS上搭建Go语言环境实录
  4. 艺术站-卡通和风格化的HDRI天空
  5. Unity电子游戏优化终极指南 The Ultimate Guide to Video Game Optimisation
  6. 一文入门 Zookeeper
  7. linux进程间通信:system V消息队列
  8. 【LeetCode】230#二叉搜索树中第K小的元素
  9. day1作业(格式化输出)
  10. R语言实战 - 基本统计分析(2)- 频数表和列联表