nginx代理缓存

        在服务器架构中,反向代理服务器除了能够起到反向代理的作用之外,还可以缓存一些资源,加速客户端访问,nginx的ngx_http_proxy_module模块不仅包含了反向代理的功能还包含了缓存功能。

1、定义代理缓存规则

参数详解:

 proxy_cache_path 表示代理缓存区域

/etc/nginx/cache/gyq 表示缓存区的路径,即用于缓存的本地目录

levels 表示等级的意思,此处表示目录的层级。注意:将大量文件放置在单个目录中会导致文件访问缓慢,所以建议使用两级目录层次结构。若没有配置levels参数,nginx默认将所有文件放到同一个目录中。

keys_zone 表示一个共享区域,用于缓存键值。键值是资源的标签,不同资源对应不同的键值,每个键值都具有唯一性。

        服务器通过键值查询客户端请求的资源。若查询不到对应的资源,就向web服务器进行请求,将请求到的资源通过散列算法生成键值并存储到kesy_zone。将键值存储到keys_zone可以使Nginx再不查询磁盘的情况下,快速判断一个请求的资源是否在缓存中,大大提高查询速度。1MB大小的内存空间可以存储大约8000个键值。

pproxy_cache 表示keys_zone的名称,为方便调用,允许用户进行自定义。10M表示keys_zone空间大小。

max_size 表示缓存资源大小的上限,如果用户不指定具体值,则表示允许缓存资源量不断增长,可占用所有可用磁盘的空间。配置具体值后,当缓存达到上限时,处理器便调用cache manager来移除最近最少被使用的文件,将缓存资源所占用的空间降低至小于上限值的范围。

inactive 是不活跃的意思,此处表示缓存存在的时间。如果一项资源在60分钟内没有被客户端请求,无论该资源是否过期,缓存管理都会在缓存空间中删除。若inactive没有被配置,,则该默认值为10分钟。nginx不会自动删除由缓存控制头部指定的过期资源,过期资源只有在inactive指定时间内没有被访问的情况下才会被Nginx删除。如果过期资源访问了,那么nginx将从源服务器上重新获取资源,并更新对应的inactive值。

user_temp_path 表示用户缓存路径。当资源被写入缓存空间之前,需要将资源先写入用户缓存路径,再复制到缓存空间,如此就增加了复制次数浪费了服务器资源,通常建议关闭。

2、引用

参数详解:

        proxy_cache proxy_cache 表示调用名称为“proxy_cache”的缓存规则。
        proxy_cache_valid 200 304 12h; 表示用户的访问的访问状态为200或者304时,缓存对应的资源,缓存时间为12小时。
        proxy_cache_valid any 10m; 表示用户访问的状态码不是200,也不是304时将对应资源进行缓存,,缓存时间为10分钟。
        proxy_cache_key $host$uri$is_args$args; 表示根据客户端请求资源的地址、路径、参数、参数值,通过散列值算法生成键值。
        add_header Nginx-Cache "$upstream_cache_status"; 表示在nginx请求头部中添加web服务器的缓存状态信息。
        proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504; 表示如果出现500、502、503或者504的访问结果,就换下一个web服务器进行访问。

3、访问缓存

首次访问:MISS表示未命中缓存

第二次访问之后:HIT表示命中缓存

各种代理返回值:

注意:只有当网站被成功访问时,响应头部才会响应代理缓存的返回值

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/47147.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

减分虎-交管12123学习题目及答案

学法减分是对驾驶证已经存在的记分进行减免,并不是给驾驶证进行加分,不是代替违章扣分。学法免费获取的分值正是对扣分记录的清除。比如违章被扣6分,通过学法免分考试把6分清空重新开始。 学法减分政策为驾驶员提供了一次难得的加分机会。然而…

WordPress 6.6 “Dorsey多尔西”发布

WordPress 6.6 “Dorsey多尔西”已经发布,它以传奇的美国大乐队领袖 Tommy Dorsey 名字命名。Dorsey 以其音调流畅的长号和作品而闻名,他的音乐以其情感深度和充满活力的能量吸引了观众。 当您探索 WordPress 6.6 的新功能和增强功能时,让您的…

MBR40150FCT-ASEMI无人机专用MBR40150FCT

编辑:ll MBR40150FCT-ASEMI无人机专用MBR40150FCT 型号:MBR40150FCT 品牌:ASEMI 封装:TO-220F 批号:最新 最大平均正向电流(IF):40A 最大循环峰值反向电压(VRRM&a…

部署kafkamanager

1,检查kafka的版本 到lib下查看 libs/kafka-clients-0.11.0.3.jar kafka的版本 0.11 2,下载kafkamanager 链接: https://pan.baidu.com/s/1qYifoa4 密码:el4o 3,解压后更改该conf下conf/application.conf 中zkhosts …

论文翻译 | Successive Prompting for Decomposing Complex Questions 分解复杂问题的连续提示

摘要 回答需要做出潜在决策的复杂问题是一项具有挑战性的任务,尤其是在监督有限的情况下。 最近的研究利用大型语言模型(LMs)的能力,在少量样本设置中通过展示如何在单次处理复杂问题的同时输出中间推理过程,来执行复杂…

2024年金航标和萨科微扩张

近年电子信息产业链的外迁和世界经济的低迷,各行各业都很卷,加班加点但业绩负增长是常态,互联网大厂阿里巴巴大裁员、字节跳动裁到了大动脉、京东刘强东抛弃躺平的兄弟、深圳华强北做电子元器件的老板老板娘们一脸茫然,周围都弥漫…

2024华为数通HCIP-datacom最新题库(变题更新⑥)

请注意,华为HCIP-Datacom考试831已变题 请注意,华为HCIP-Datacom考试831已变题 请注意,华为HCIP-Datacom考试831已变题 近期打算考HCIP的朋友注意了,如果你准备去考试,还是用的之前的题库,切记暂缓。 1、…

CSI-2介绍

CSI-2介绍 1.CSI-2是什么2.CSI-2功能简述3.分层传输3.1应用层(Application Layer)3.2协议层(Protocol Layer)3.3物理层(PHY Layer) 4.支持传输数据类型5.版本5.1、CSI-2 1.05.2、CSI-2 2.0 6.框图6.1CSI2&a…

【手写数据库内核组件】0501多线程并发模型,任务分发多工作者执行架构实现,多线程读写状态时volatile存储类型使用技巧

0501 多线程管理 ​专栏内容: postgresql使用入门基础手写数据库toadb并发编程 个人主页:我的主页 管理社区:开源数据库 座右铭:天行健,君子以自强不息;地势坤,君子以厚德载物. 文章目录 0501 多…

深入理解PostgreSql域类型(Domain),灵活定义数据约束,让表结构设计更加严谨

在PostgreSQL中,域(Domain)是一种用户定义的数据类型,它基于系统内已存在的数据类型,并可以附加约束条件。使用域可以增强数据的完整性和一致性,因为它允许开发者对特定列设定更为具体的规则,比…

LeetCode 链表OJ题

1.消失的数字 题目信息及链接:面试题 17.04. 消失的数字 - 力扣(LeetCode) 分析: 首先我们看到题目给予了我们一个数组,要求我们找到消失的数字,这个消失的数字指的是所给我们的数组中排序后少掉的数字&…

用go实现限流算法

文章目录 固定窗口优缺点:适用场景:总结: 滑动窗口优缺点:适用场景:总结: 漏桶限流器优缺点:适用场景:总结: 令牌桶优缺点:适用场景:总结&#xf…

【Python】Selenium怎么切换浏览器的页面

我们在爬网使用Selenium进行测试的时候,有时候想要点击浏览器里面的网址,跳到另一个页面上,获取第二个页面的内容。 可是有时候从官网进去,点击跳转到下一个页面以后,却没法定位到下一个页面的元素,这时候就…

Pytorch学习笔记day1—— 安装教程

这里写自定义目录标题 Pytorch安装方式 工作需要,最近开始搞一点AI的事情。但是这个国产的AI框架,实话说对初学者不太友好 https://www.mindspore.cn/ 比如说它不支持win下的CUDA,可是我手里只有3070Ti和4060也不太可能自己去买昇腾就有点绷不…

MongoDB教程(八):mongoDB数据备份与恢复

💝💝💝首先,欢迎各位来到我的博客,很高兴能够在这里和您见面!希望您在这里不仅可以有所收获,同时也能感受到一份轻松欢乐的氛围,祝你生活愉快! 文章目录 引言MongoDB 备…

01 机器学习概述

目录 1. 基本概念 2. 机器学习三要素 3. 参数估计的四个方法 3.1 经验风险最小化 3.2 结构风险最小化 3.3 最大似然估计 3.4 最大后验估计 4. 偏差-方差分解 5. 机器学习算法的类型 6. 数据的特征表示 7. 评价指标 1. 基本概念 机器学习(Machine Le…

程控电阻器

程控电阻器 由于要测试电阻型温度传感器,一个电阻箱又很贵,就想做一款 程控电阻器 来满足。 设计满足300Ω到400kΩ可调电阻。 设计思路 选择数字电位器去控制电阻输出,最好是精度高,范围大的数字电位器。经过寻找后,发…

Beelzebub过程记录及工具集

文章目录 靶场搭建靶场测试过程安装dirsearch扫描目录wpscan扫描破解 靶场搭建 https://download.vulnhub.com/beelzebub/Beelzebub.zip 下载解压镜像,从vmware打开。 一键式开机即可。 打开后配置网络。 确保网络可达。 靶场测试过程 首先使用nmap扫描网段的存…

深入理解Session和Cookie的作用与联系

深入理解Session和Cookie的作用与联系 1、什么是Cookie?1、什么是Session?1、Session和Cookie的联系4、实际应用场景 💖The Begin💖点点关注,收藏不迷路💖 Session和Cookie是两个至关重要的概念&#xff0c…

Abaqus基于CT断层扫描的三维重建插件CT2Model 3D

插件介绍 AbyssFish CT2Model 3D V1.0 插件可将采用X射线等方法获取的计算机断层扫描(CT)图像在Abaqus有限元软件内进行三维重建,进而高效获取可供模拟分析的有限元模型。插件可用于医学影像三维重构、混凝土细观三维重建、岩心数字化等领域…