【Nginx优化】Nginx openresty操作

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 【Nginx优化】Nginx openresty操作

学习地址

https://moonbingbing.gitbooks.io/openresty-best-practices/lua/brief.html


资料 存在N-Nginx openresty   lua


1、部署架构图

image.png



2、部署Nginx openResty

nginx需要加载相应的模块在编译源码的时候就已经确定了,自己编译麻烦,可以使用openResty框架


3、部署前端文件


4、前端资源路由

image.png

   location 前后都有/, alias代表替换,命中myresouces之后替换成下面的路径

image.png


   


   5、nginx动静分离 (反向代理)

      1、设置upstream server

       2、设置动态请求的location为proxy pass 路径

image.png


       3、开启tomcat access log验证是否收到请求

   内置image.png

%h 远程的主机名或IP

%l 远程的逻辑用户名

%u 通过身份验证的远程用户

%t 通用日志格式的日期和时间

%r 请求

%s 返回的HTTP状态码

%b 响应中发送的字节,不包括HTTP头

%D  Time taken to process the request,in millis,请求消耗的时间,以毫秒记


更多解释

%a  这是记录访问者的IP,在日志里是127.0.0.1

%A  这是记录本地服务器的IP,在日志里是192.168.254.108

%b  发送信息的字节数,不包括http头,如果字节数为0的话,显示为-

%B  发送信息的字节数,不包括http头。

%h  服务器的名称。如果resolveHosts为false的话,这里就是IP地址了,例如我的日志里是10.217.14.16

%H  访问者的协议,这里是HTTP/1.0

%l  官方解释:Remote logical username from identd (可能这样翻译:记录浏览者进行身份验证时提供的名字)(always returns '-')

%m  访问的方式,是GET还是POST

%p  本地接收访问的端口  

%q  比如你访问的是aaa.jsp?bbb=ccc,那么这里就显示?bbb=ccc,就是querystring的意思

%r  First line of the request (method and request URI) 请求的方法和URL

%s  http的响应状态码  

%S  用户的session ID,这个session ID大家可以另外查一下详细的解释,反正每次都会生成不同的session ID

%t  请求时间

%u  得到了验证的访问者,否则就是"-"

%U  访问的URL地址,我这里是/rightmainima/leftbott4.swf

%v  服务器名称,可能就是你url里面写的那个吧,我这里是localhost

%D  Time taken to process the request,in millis,请求消耗的时间,以毫秒记

%T  Time taken to process the request,in seconds,请求消耗的时间,以秒记

附:参考官方文档: http://tomcat.apache.org/tomcat-5.5-doc/config/valve.html


6、nginx 反向代理 与后台服务 默认 短连接。优化点就是 保持长连接 keepalive

      http1.1 支持 keepalive image.png



7、Nginx 高性能原因Nginx高性能分析

  1、基于epoll多路复用

   2、master worker进程模型

   3、协程机制

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
3月前
|
存储 缓存 Java
Openresty(lua+nginx)-Guava-Redis做多级缓存
Openresty(lua+nginx)-Guava-Redis做多级缓存
48 1
|
12天前
|
应用服务中间件 nginx
[nginx]编译安装openresty
[nginx]编译安装openresty
|
8天前
|
缓存 前端开发 Java
"揭秘!SpringBoot携手Nginx,性能飙升秘籍大公开:轻松掌握配置优化,让你的应用快如闪电!"
【8月更文挑战第11天】随着微服务架构的发展,SpringBoot成为构建RESTful API的首选,Nginx则作为高性能的反向代理服务器提升应用性能。本文将探讨两者如何协同工作,包括Nginx的负载均衡策略、静态资源缓存及数据压缩配置;同时讨论SpringBoot的线程池优化、缓存策略及性能监控。通过这些方法,帮助开发者显著提高系统的整体性能和可用性。
19 1
|
18天前
|
缓存 负载均衡 Java
SpringBoot 与 Nginx 配置优化:性能拉满的关键学习方法
【8月更文挑战第1天】在现代Web开发领域,SpringBoot以其快速启动、简化配置的特性成为众多开发者的首选框架,而Nginx则以其高性能的HTTP和反向代理服务器功能著称。将两者结合,并通过精细的配置优化,可以显著提升Web应用的性能与稳定性。以下是为您学生定制的SpringBoot与Nginx配置优化的学习方法与研究路径。
36 1
|
1月前
|
Ubuntu 应用服务中间件 Linux
Linux学习之Ubuntu 20中OpenResty的nginx目录里内容和配置文件
总的来说,OpenResty的Nginx配置文件是一个强大的工具,它允许你以非常灵活的方式定义你的Web服务的行为。
24 2
|
1月前
|
缓存 负载均衡 应用服务中间件
Nginx反向代理优化
教你如何做好Nginx反向代理优化
|
2月前
|
监控 前端开发 应用服务中间件
前端开发者必备:Nginx入门实战宝典,从部署到优化一网打尽(2)
前端开发者必备:Nginx入门实战宝典,从部署到优化一网打尽
50 1
|
2月前
|
负载均衡 前端开发 应用服务中间件
前端开发者必备:Nginx入门实战宝典,从部署到优化一网打尽(1)
前端开发者必备:Nginx入门实战宝典,从部署到优化一网打尽
84 1
|
2月前
|
JavaScript Ubuntu 应用服务中间件
nginx扩展 OpenResty 实现防cc攻击教程
使用OpenResty实现CC攻击防护,包括两个主要步骤:限制请求速度和JS验证。首先,安装依赖(RHEL/CentOS需安装readline-devel, pcre-devel, openssl-devel,Ubuntu需安装libreadline-dev等)。然后,安装Luajit和OpenResty。在Nginx配置中,创建`lua`共享字典并设置`content_by_lua_file`调用lua脚本。lua脚本检查请求频率,超过限制则返回503,否则增加计数。同时,通过JS验证,生成随机码并重定向用户,用户需携带正确验证码请求才能访问。
56 0
|
3月前
|
缓存 负载均衡 安全
深入探索Nginx高性能Web服务器配置与优化
【5月更文挑战第7天】本文深入探讨了Nginx的配置与优化,重点介绍了基础配置参数如`worker_processes`、`worker_connections`和`keepalive_timeout`,以及优化策略,包括使用epoll事件驱动模型、开启gzip压缩、启用缓存、负载均衡和安全配置。此外,还提到了性能调优工具,如ab、nginx-stats和nmon,以助于提升Nginx的性能和稳定性。