Openresty实现反向代理、Nginx的图表功能

1、使用openresty缓存功能

(1)openresty是什么?

OpenResty 是一个强大的 Web 应用服务器,Web 开发人员可以使用 Lua 脚本语言调动 Nginx 支持的各种 C 以及 Lua 模块,更主要的是在性能方面,OpenResty可以 快速构造出足以胜任 10K 以上并发连接响应的超高性能 Web 应用系统。

(2)openresty的优势?

首先我们选择使用OpenResty,其是由Nginx核心加很多第三方模块组成,其最大的亮点是默认集成了Lua开发环境,使得Nginx可以作为一个Web Server使用。

借助于Nginx的事件驱动模型和非阻塞IO,可以实现高性能的Web应用程序。

而且OpenResty提供了大量组件如Mysql、Redis、Memcached等等,使在Nginx上开发Web应用更方便更简单。目前在京东如实时价格、秒杀、动态服务、单品页、列表页等都在使用Nginx+Lua架构,其他公司如淘宝、去哪儿网等。

(3)利用openresty做反向代理,实现缓存
下载openresty并且编译安装

软件可以直接在官网上获得,本机使用的是最新版openresty-1.15.8.1.tar.gz
tar zxf openresty-1.15.8.1.tar.gz			##首先解压安装包
cd openresty-1.15.8.1						##进入解压目录
./configure --prefix=/usr/local/openresty	##执行编译脚本直接开始编译
gmake && gmake install						##根据提示不能使用make

原来的nginx作为web服务器的配置

vim /usr/local/nginx/conf/nginx.conf	##修改配置文件,因为openresty也使用80端口,所以我们把这个
			                            nginx的端口改为8080,让它作为一个真实的web服务器,让openresty作为一个反向代理服务器使用80端口
systemctl reload nginx

在这里插入图片描述
在这里插入图片描述

让openresty作为一个反向代理,修改它的配置文件

vim /usr/local/openresty/nginx/conf/nginx.conf			##让他作为一个反向代理访问真实主机的8080端口
/usr/local/openresty/nginx/sbin/nginx 					##启动openresty的nginx服务

在这里插入图片描述
在这里插入图片描述

在本地做好解析后,访问www.westos.org,当真实web服务器的nginx被关闭后,还可以访问到网址信息,说明缓存成功
vim /etc/hosts
172.25.21.1		www.westos.org
curl -I www.westos.org

systemctl stop nginx			##关闭真实web服务器的nginx

curl -I www.westos.org			##再次测试,还有信息说明有缓存信息

在这里插入图片描述
在这里插入图片描述

2.nginx的图表统计功能

(1).软件的安装

需要两个包,可以在官网上下载,本机使用的是:
goaccess-1.3.tar.gz							##图表功能软件安装包
GeoIP-devel-1.5.0-11.el7.x86_64.rpm			##图表功能安装包编译时需要的依赖环境
yum install GeoIP-devel-1.5.0-11.el7.x86_64.rpm			##先安装环境依赖
tar zxf goaccess-1.3.tar.gz
cd goaccess-1.3/
./configure --prefix=/usr/local/goaccess --enable-utf8 --enable-geoip=legacy --with-openssl
														##执行编译安装脚本,加上解码等参数
make && make install									##编译安装到指定位置
/usr/local/openresty/nginx/sbin/nginx -s stop			##把缓存服务的openresty关掉
cd /usr/local/goaccess/bin/								##进入软件的执行命令目录
ln -s /usr/local/goaccess/bin/goaccess /usr/bin/		##给执行命令创建一个软链接

(2)服务的配置

cd /usr/local/nginx/logs/			##进入nginx的日志目录下
goaccess access.log -o ../html/report.html --real-time-html --time-format='%H:%M:%S' 
--date-format='%d/%b/%Y' --log-format=COMBINED		##把日志以默认混合的方式输出成一个html文件可以直接在网页上访问

在这里插入图片描述

再开启一个shell连上主机:
vim /usr/local/nginx/conf/nginx.conf			##修改nginx配置文件
systemctl reload nginx.service

在这里插入图片描述
(3)测试:

在浏览器输入
http://172.25.33.1:8080/report.html
会有日志中详细的参数,并且是动态的,访问后数字和图形就会发生变化

在这里插入图片描述

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值