
nginx学习
文章平均质量分 78
参考nginx书籍:Nginx应用与运维实战
wyx学习k8s
一起学习
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Nginx负载均衡之动态更新upstream
由于该指令只支持 worker 级别的操作,为使得 Nginx 的所有 worker 都生效,此处通过编写 Lua 脚本与 lua-resty-upstream-healthcheck 模块做了简单的集成,利用 lua-resty-upstream-healthcheck 模块的共享内存机制将节点状态同步给其他工作进程,实现对 upstream 的节点状态的控制。在 Nginx 的商业版本中,提供了 ngx_http_api_module 模块,可以通过 API 动态添加或移除上游服务器组中的节点。原创 2024-06-17 08:53:03 · 1466 阅读 · 0 评论 -
Nginx负载均衡之Memcached缓存模块
当 Memcached 的请求失败后,则将请求转发给后端 Web 服务器的接口动态生成对应的静态文件,返回响应数据并更新 Memcached。在以 Memcached 服务器为缓存应用的方案中,Memcached 作为内容缓存的存储服务器,用户通过 URL 为 Memcached 的 key 将 Web 请求数据缓存到 Memcached 服务器中,在客户端发起请求时,Nginx 通过一致的 URL 为 key,快速地从 Memcached 服务器中将缓存的内容作为用户的请求响应数据返回给客户端。原创 2024-06-20 09:08:06 · 1135 阅读 · 0 评论 -
Nginx缓存之代理缓存配置
Nginx 的缓存功能是集成在代理模块中的,当启用缓存功能时,Nginx 将请求返回的响应数据持久化在服务器磁盘中,响应数据缓存的相关元数据、有效期及缓存内容等信息将被存储在定义的共享内存中。当收到客户端请求时,Nginx 会在共享内存中搜索缓存信息,并把查询到的缓存数据从磁盘中快速交换到操作系统的页面缓存(Page Cache)中,整个过程的速度非常快。Nginx 缓存会缓存加载进程(Cache Loader Process)和库存管理(Cade Manger Process)进行管理。原创 2024-06-18 10:49:16 · 1376 阅读 · 0 评论 -
Nginx日志管理之访问日志配置
Nginx 的访问日志主要记录用户客户端的请求信息(见下表)。用户的每次请求都会记录在访问日志中,access_log 指令可以设置日志的输出方式及引用的日志格式。Nginx 的 TCP/UDP 的日志处理是在连接处理阶段结束时才发生,所以 TCP/UDP 代理的访问日志只在连接关闭时才被记录。Nginx TCP/UDP 的访问日志的变量与 HTTP 的访问日志的变量是不同的,TCP/UDP 常见日志变量如下表所示。原创 2024-06-21 08:31:25 · 1120 阅读 · 0 评论 -
Nginx日志管理之日志归档配置
Nginx 日志存储为文件时,同一 access_log 指令设置的日志文件是以单文件形式存储的,在日常使用中为方便维护,通常需要将日志文件按日期进行归档。虽然 Nginx 本身并没有这一功能,但实现日志归档的方法仍有很多,此处推荐使用 Logrotate 实现日志归档管理。Logrotate 是 CentOS 操作系统内置日志管理工具,该工具可对系统中生成的大量日志文件进行归档管理,其允许对日志文件实行压缩、删除或邮寄等操作。原创 2024-06-21 09:55:06 · 1125 阅读 · 0 评论 -
Nginx缓存之web缓存配置
Web 缓存可节约网络带宽,有效提高用户打开网站的速度。由于应用服务器被请求次数的降低,也相对使它的稳定性得到了提升。Web 缓存从数据内容传输的方向分为前向位置缓存和反向位置缓存两类。如下图所示。前向位置缓存既可以是用户的客户端浏览器,也可以是位于用户 ISP 或内部局域网的服务器。反向位置缓存通常位于互联网端,如内容分发网络或网站的反向代理缓存等。原创 2024-06-18 10:45:30 · 1303 阅读 · 0 评论 -
linux-shell脚本删除120天以外的日志目录
用户需求:需要删除当前时间下120天以外的日志目录,日志目录名称是用日期来定义的,例:2024-03-05。原创 2024-06-19 14:06:44 · 264 阅读 · 0 评论 -
Nginx日志管理之错误日志配置
Nginx 的错误日志可以帮助用户及时判断 Nginx 配置及运行时出错的原因,错误日志也可以通过 Nginx 内置指令进行配置,但不支持格式定义。配置指令如下表所示。指令值中第二个参数是输出日志的级别,指定的级别将包含自身及级别值比其小的所有级别日志,日志内容会保存到第一个参数设定的输出位置。原创 2024-06-21 09:52:38 · 731 阅读 · 0 评论 -
Nginx负载均衡之反向代理缓存服务器配置
Nginx 的重点缓存应用是在反向代理缓存的应用场景,官方也一直在不断地增强该功能。Nginx 代理功能根据应用方式的不同分为正向代理和反向代理,Nginx 开源版本的正向代理功能并不完整,不支持 HTTP 的 CONNECT 方法,所以 HTTPS 的正向代理功能通常是使用第三方模块来实现的。Nginx 的 HTTPS 正向代理使用最多的第三方模块是 ngx_http_proxy_connect_module,但其不支持缓存,所以开源版本 Nginx 无法在正向代理缓存的使用场景中应用。原创 2024-06-20 09:11:07 · 681 阅读 · 0 评论 -
linux最大线程数限制及打开最大文件数
对于systemd service的资源设置,则需修改全局配置,全局配置文件放在/etc/systemd/system.conf和/etc/systemd/user.conf,同时也会加载两个对应目录中的所有.conf文件/etc/systemd/system.conf.d/.conf和/etc/systemd/user.conf.d/.conf。/etc/security/limits.d/里面配置会覆盖/etc/security/limits.conf的配置。一般soft的值会比hard小,也可相等。原创 2024-06-19 14:05:15 · 1831 阅读 · 0 评论 -
Nginx负载均衡之TCP/UDP
Nginx 的 TCP/UDP 负载均衡是应用 Stream 代理模块(ngx_stream_proxy_module)和 Stream 上游模块(ngx_stream_upstream_module)实现的。Nginx 的 TCP 负载均衡与 LVS 都是四层负载均衡的应用,所不同的是,LVS 是被置于 Linux 内核中的,而 Nginx 是运行于用户层的,基于 Nginx 的 TCP 负载可以实现更灵活的用户访问管理和控制。原创 2024-06-17 08:55:58 · 1532 阅读 · 0 评论 -
Nginx日志管理之日志分析
Nginx 通常被置于服务器访问的入口,其访问日志可以全局记录用户访问的来源、响应时间,以及用户行为热点等数据,通过对访问日志的分析,可以清晰地了解用户来源、用户行为习惯及自身服务器性能等情况。借助 ELK 的高性能处理能力,可以实时地将数据分析结果展现给服务器的维护人员及应用的开发人员,进而不断提高业务的可用性及产品的用户体验。Nginx 的日志分析可以分为安全分析、性能分析、可用性分析及访问统计分析 4 个方面。原创 2024-06-21 08:31:07 · 866 阅读 · 0 评论 -
Nginx负载均衡之长连接负载均衡
当客户端通过浏览器访问 HTTP 服务器时,HTTP 请求会通过 TCP 协议与 HTTP 服务器建立一条访问通道,当本次访问数据传输完毕后,该 TCP 连接会立即被断开,由于这个连接存在的时间很短,所以 HTTP 连接也被称为短连接。默认配置下,Nginx 的工作进程与被代理服务器建立的连接都是短连接,所以获取请求响应后就会关闭连接并通知可用连接池回收此代理连接资源。当工作进程与被代理服务器有新的连接请求时,会先在长连接缓存池中查找符合需求的连接,如果存在则使用该连接,否则创建新连接。原创 2024-06-14 10:38:02 · 2267 阅读 · 0 评论 -
Nginx负载均衡之模块
Nginx 负载均衡是由代理模块和上游(upstream)模块共同实现的,Nginx 通过代理模块的反向代理功能将用户请求转发到上游服务器组,上游模块通过指定的负载均衡策略及相关的参数配置将用户请求转发到目标服务器上。原创 2024-06-14 10:20:57 · 622 阅读 · 0 评论 -
Nginx负载均衡之负载均衡策略
负载均衡技术是将大量的客户端请求通过特定的策略分配到集群中的节点,实现快速响应的应用技术。在应对高并发的应用请求时,单节点的应用服务计算能力有限,无法满足客户端的响应需求,通过负载均衡技术,可以将请求分配到集群中的多个节点中,让多个节点分担高并发请求的运算,快速完成客户端的请求响应。原创 2024-06-14 10:30:21 · 1872 阅读 · 0 评论 -
Nginx之静态文件服务器的搭建
静态文件服务器是指提供HTML文件访问或客户端 可直接从中下载文件的Web服务器。对于图片、 JavaScript或CSS文件等渲染页面外观的、不会动态改 变内容的文件,大多数网站会单独提供以静态文件服 务器的方式对其进行访问,实现动静分离的架构。在以上配置中,每个server指令域等同于一个虚 拟服务器,每个location指令域等同于一个虚拟目录。原创 2024-06-13 08:34:22 · 1593 阅读 · 0 评论 -
Nginx之文件下载服务器
在对外分享文件时,利用Nginx搭建一个简单的下 载文件管理服务器,文件分享就会变得非常方便。利 用Nginx的诸多内置指令可实现自动生成下载文件列表 页、限制下载带宽等功能。原创 2024-06-13 08:34:40 · 765 阅读 · 1 评论 -
Nginx负载均衡之upstream容错机制详解
模块 lua-resty-upstream-healthcheck 的原理是每到(interval)设定的时间,就会对被代理服务器的 HTTP 端口主动发起 GET 请求(http_req),当请求的响应状态码在确定为合法的列表(valid_status)中出现时,则认为被代理服务器是健康的,如果请求的连续(fall)设定次数返回响应状态码都未在列表(valid_status)中出现,则认为是故障状态。Nginx 被动检测机制的优点是不需要增加额外进程进行健康检测,但用该方法检测是不准确的。原创 2024-06-14 10:43:44 · 1375 阅读 · 0 评论 -
Nginx之Stream(TCP/UDP)负载均衡
Nginx 的 TCP/UDP 负载均衡是应用 Stream 代理模块(ngx_stream_proxy_module)和 Stream 上游模块(ngx_stream_upstream_module)实现的。Nginx 的 TCP 负载均衡与 LVS 都是四层负载均衡的应用,所不同的是,LVS 是被置于 Linux 内核中的,而 Nginx 是运行于用户层的,基于 Nginx 的 TCP 负载可以实现更灵活的用户访问管理和控制。原创 2024-06-14 10:52:19 · 1496 阅读 · 0 评论 -
Nginx之HTTP模块详解
Nginx是模块化的代码架构,其代码由核心代码与功能模块代码构成。Nginx的主要功能模块是HTTP功能模块,HTTP功能模块在HTTP核心功能的基础上为Nginx对HTTP请求的处理流程提供了扩展功能,这些扩展功能可以让用户很方便地应对访问控制、数据处理、代理缓存等各种复杂的场景应用,同时也让有开发能力的用户能够积极参与,不断增强Nginx的功能。由于功能模块比较多,为了便于对各功能模块进行介绍,此处按照模块的功能进行如下分类:动态赋值:可根据HTTP请求的变化动态地进行变量赋值的功能模块。原创 2024-06-14 10:20:37 · 1584 阅读 · 0 评论 -
Nginx之编译及部署
Nginx是一款优秀的开源软件,是运行在操作系统 上的应用程序,因此Nginx的性能依赖于操作系统及其 对底层硬件的管理机制,为了使Nginx在运行时发挥最 大的性能,需要对操作系统的服务配置和参数做一些调整。系统服务配置可用如下方式实现。(1)系统服务安装CentOS可用最小化安装,安装完毕后,用下列命令安装补充工具(2)DNC缓存编辑/etc/resolv.conf配置DNS服务器,打开NSCD 服务,缓存DNS,提高域名解析响应速度。(3)修改文件打开数限制。原创 2024-06-07 08:28:14 · 1829 阅读 · 0 评论 -
Nginx之初识
Nginx是一个高性能的反向代理和Web服务器软件,因其系统资源消耗低、运行稳定且具有高性能的并发处理能力等特性,在互联网企业中得到广泛的应用。原创 2024-06-07 08:28:40 · 1057 阅读 · 0 评论 -
Nginx之核心配置指令1
作为一款高性能的HTTP服务器软件,Nginx的核心 功能就是应对HTTP请求的处理。由于具体硬件、操作 系统及应用场景的不同,需要Nginx在对HTTP请求的处 理方法上进行不同的调整,为了应对这些差异,Nginx 提供了多种配置指令,让用户可以根据实际的软硬件及使用场景进行灵活配置。Nginx的配置指令很多,为了方便理解和使用,可 以按照其在代码中的分布,将其分为和两大类。原创 2024-06-11 08:35:40 · 1101 阅读 · 0 评论 -
Nginx之核心配置指令2
设置读取客户端请求体的缓冲区大小,当请求体的大小超过该设定值后,会按照client_body_in_single_buffer指令的配置选择部分或全部写入client_body_temp_path指令设定的文件中。设置存放读取客户端请求头的缓冲区的大小,默认值为1K,当请求头的数据因cookie过长等其他原因超过所设定的大小时,会按照large_client_header_buffers的指令配置进行处理。请求头中属性名称的定义中"_"是无效连接符,启用该指令后,"_"将被认为是有效的连接符。原创 2024-06-12 08:30:00 · 831 阅读 · 0 评论 -
Nginx之核心配置指令3
用户请求的最终结果是要返回数据,当响应文件 在Nginx服务器本地时,需要进行本地文件位置、读或 写、返回执行结果的操作。数据处理包括对这些操作 进行指令配置。原创 2024-06-12 08:31:34 · 1065 阅读 · 0 评论