Centos7 安装 Tengine终极篇
来源:互联网 发布:东华云计算有限公司 编辑:程序博客网 时间:2024/05/19 01:33
Centos7 安装 Tengine终极篇
Tengine介绍
Tengine是淘宝开发的基于nginx的应用服务器,反向代理服务器。它兼容nginx的所有配置,并且在其上增加了很多实用的功能,例如动态模块加载,集成lua语言进行扩展等,在性能方面有了比较大的改进。下面是Tengine独有的部分功能,查看全部等前往官网,地址是 http://tengine.taobao.org/ 。
一、Tengine部分特性
1.nginx -m 查看所有已经加载的模块,static说明已经安装的,shared说明是动态安装的;
2.nginx架构是模块化的,除了主模块,其他模块都需在安装时进行编译安装,也可在安装后进行编译安装;
3.tengine完全兼容nginx的配置;
4.tengine实现动态加载模块,不需重新编译,就可以实现安装新的模块。动态模块功能会被默认安装。而nginx不支持模块动态加载,需要编译重启;
5.lua语言扩展功能,通过编程可以有效为应用服务器分流请求;
6.强大的负载均衡功能,可以检测应用服务器的健康情况,动态的上下线。
二、安装Tengine,具有LUA模块
安装必要的编译环境好
# yum update# yum install gcc gcc-c++ autoconf automake
安装需要的组件
PCRE
PCRE(Perl Compatible Regular Expressions)是一个Perl库,包括 perl 兼容的正则表达式库。nginx rewrite依赖于PCRE库,所以在安装Tengine前一定要先安装PCRE,最新版本的PCRE可在官网(http://www.pcre.org/)获取。具体安装流程为:
cd /usr/local/srcwget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.40.tar.gztar zxvf pcre-8.40.tar.gzcd pcre-8.40./configure --prefix=/usr/local/pcremake && make install
附加信息:
源码的安装一般由3个步骤组成:配置(configure)、编译(make)、安装(make install)。
Configure是一个可执行脚本,它有很多选项,在待安装的源码路径下使用命令./configure –help输出详细的选项列表。其中–prefix选项是配置安装的路径,如果不配置该选项,安装后可执行文件默认放在/usr /local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/usr/local/etc,其它的资源文件放在/usr /local/share,比较凌乱。
如果配置–prefix,如:./configure –prefix=/usr/local/test,可以把所有资源文件放在/usr/local/test的路径中,不会杂乱。
用了—prefix选项的另一个好处是卸载软件或移植软件。当某个安装的软件不再需要时,只须简单的删除该安装目录,就可以把软件卸载得干干净净;移植软件只需拷贝整个目录到另外一个机器即可(相同的操作系统)。当然要卸载程序,也可以在原来的make目录下用一次make uninstall,但前提是make文件指定过uninstall。OpenSSL
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。,安装OpenSSL(http://www.openssl.org/source/)主要是为了让tengine支持Https的访问请求。具体是否安装看需求。
复制代码 代码如下:cd /usr/local/srcwget http://www.openssl.org/source/openssl-1.0.2.tar.gztar zxvf openssl-1.0.2.tar.gzcd openssl-1.0.2.tar.gz./configure --prefix=/usr/local/opensslmake && make install
Zlib
Zlib是提供资料压缩之用的函式库,当Tengine想启用GZIP压缩的时候就需要使用到Zlib(http://www.zlib.net/)。
cd /usr/local/srcwget http://zlib.net/zlib-1.2.11.tar.gztar zxvf zlib-1.2.11.tar.gzcd zlib-1.2.11.tar.gz./configure --prefix=/usr/local/zlibmake && make install
jemalloc
jemalloc(http://www.canonware.com/jemalloc/)是一个更好的内存管理工具,使用jemalloc可以更好的优化Tengine的内存管理。
cd /usr/local/srcwget http://www.canonware.com/download/jemalloc/jemalloc-3.6.0.tar.bz2tar jxvf jemalloc-3.6.0.tar.bz2cd jemalloc-3.6.0.tar.bz2./configure --prefix=/usr/local/jemallocmake && make install
安装Tengine
在主要核心的组件安装完毕以后就可以安装Tegine了,最新版本的Tegine可从官网(http://tengine.taobao.org/)获取。
在编译安装前还需要做的一件事是添加一个专门的用户来执行Tengine。当然你也可以用root(不建议)。
复制代码 代码如下:groupadd www-datauseradd -s /sbin/nologin -g www-data www-data
接下来才是进行安装:
cd /usr/local/srcwget http://tengine.taobao.org/download/tengine-2.2.0.tar.gztar -zxvf tengine-2.2.0.tar.gzcd tengine-2.2.0./configure --prefix=/usr/local/nginx \--user=www-data \--group=www-data \--with-pcre=/usr/local/src/pcre-8.40 \--with-openssl=/usr/local/src/openssl-1.0.2 \--with-jemalloc=/usr/local/src/jemalloc-3.6.0 \--with-http_gzip_static_module \--with-http_realip_module \--with-http_stub_status_module \--with-http_concat_module \--with-zlib=/usr/local/src/zlib-1.2.11make && make install
注意配置的时候 –with-pcre 、–with-openssl、–with-jemalloc、–with-zlib的路径为源文件的路径。
Centos7配置Tengine,设置tengine开机自启
系统用户登录系统后启动的服务的目录
/usr/lib/systemd/system
如需要开机没有登陆情况下就能运行的程序在系统目录内
/usr/lib/systemd/system
我希望系统开机就启动目录,所以我把文件放在系统目录内。
vim /lib/systemd/system/nginx.service 创建文件
[Unit]Description=The nginx HTTP and reverse proxy serverAfter=syslog.target network.target remote-fs.target nss-lookup.target[Service]Type=forkingPIDFile=/usr/local/nginx/logs/nginx.pidExecStartPre=/usr/local/nginx/sbin/nginx -tExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.confExecReload=/bin/kill -s HUP $MAINPIDExecStop=/bin/kill -s QUIT $MAINPIDPrivateTmp=true[Install]WantedBy=multi-user.target
修改文件权限
chmod 745 nginx.service
设置为开机启动
systemctl enable nginx.service
其它命令
启动nginx服务
systemctl start nginx.service
设置开机自启动
systemctl enable nginx.service
停止开机自启动
systemctl disable nginx.service
查看服务当前状态
systemctl status nginx.service
重新启动服务
systemctl restart nginx.service
查看所有已启动的服务
systemctl list-units --type=service
- Centos7 安装 Tengine终极篇
- centos7 下 安装 tengine
- (一)Centos7下 Tengine安装和配置
- 安装Tengine
- tengine安装
- 安装 tengine
- tengine安装
- tengine安装
- tengine安装
- tengine安装
- tengine安装
- tengine安装
- Tengine(一) 之 安装Tengine
- CentOs7 安装Tengine 并设置成系统服务,开机自动启动。
- tengine image module 安装
- 一.安装tengine
- ubuntu 安装tengine
- Tengine 安装配置全过程
- 关于nmap所有的参数
- DBCP1.3连接泄露问题
- robotframework 使用databaselibrary登录mysql数据库
- error C3861: “gets”: 找不到标识符
- 用户模式和内核模式
- Centos7 安装 Tengine终极篇
- 【计算机基础】字符编码
- 推荐12个非常不错而且免费的后台管理HTML模板
- C语言 实现四则运算简单计算器
- Redis命令
- csu 1819: Delta Quadrant
- c中单个字符所占字节
- java.lang.ClassNotFoundException: org.springframework.web.context.request.RequestContextListener
- Linux Kernel input设备之描述