缓存配置

在解决高并发性能问题时,缓存是其中的一种手段。本文简单介绍nginx缓存的配置方法,详细可以参考nginx官方文档
我的nginx配置如下

# 设置缓存内容
proxy_cache_path /data/nginx/cache/test keys_zone=test:10m  max_size=10g;
upstream test_server {server   172.18.0.71:8080;
}server {listen 80;# 使用缓存proxy_cache  test;access_log /usr/share/nginx/logs/test/access.log;error_log /usr/share/nginx/logs/test/error.log;······
}
配置说明

proxy_cache_path /data/nginx/cache/test keys_zone=test:10m max_size=10g;

  • /data/nginx/cache/test 指定缓存文件目录
  • keys_zone=test 指定缓存名称key为test
  • 10m max_size=10g 指定缓存文件大小上线与总缓存空间大小

缓存使用配置

location / {root   html;index  index.html index.htm;proxy_pass http://test/;proxy_set_header Host $host:$server_port;proxy_set_header X-Real-IP $remote_addr;proxy_set_header Proxy-Client-IP $remote_addr;proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto  $scheme;proxy_set_header Upgrade $http_upgrade;proxy_cache_methods GET POST;proxy_cache_valid any 5m;proxy_cache_min_uses 10;
}
  • proxy_cache_methods GET POST; 设置缓存请求类型GET POST
  • proxy_cache_valid any 5m; 设置任何响应缓存时间5分钟
  • proxy_cache_min_uses 10; 设置被调用10次以上才被缓存

修改配置文件保存后reload一下nginx,进行重复请求操作,查看缓存

docker 部署的nginx踩坑

docker部署的nginx新配置缓存后可能出现报错
[emerg] 1#1: mkdir() “xxx/nginx/cache” failed (2: No such file or directory)
nginx容器出现这个报错,启动不起来。主要原因是未挂载目录,需要对挂载对应的文件目录重新创建容器方可生效

  nginx-cache:container_name: nginx-cachehostname: nginx-cacheimage: nginxexpose:- "80"- "8080"ports:- "80:80"- "8080:8080"volumes:- /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro- /data/nginx/conf.d:/etc/nginx/conf.d- /data/nginx/html:/usr/share/nginx/html- /data/nginx/logs:/usr/share/nginx/logs# 挂载cache文件目录- /data/nginx/cache:/usr/share/nginx/cache - /etc/localtime:/etc/localtime:ronetworks:noask-network:ipv4_address: 172.18.1.1

性能测试中间件Nginx缓存配置相关推荐

  1. nginx缓存配置及开启gzip压缩

    一:nginx缓存配置 在前一篇文章,我们理解过http缓存相关的知识点, 请看这篇文章. 今天我们来学习下使用nginx服务来配置缓存的相关的知识. nginx配置缓存的优点:可以在一定程度上,减少 ...

  2. nginx默认html缓存,nginx缓存配置

    今天试了一下nginx缓存配置,说到缓存相信大家应该都不陌生,也就是把访问后端web服务器的静态请求缓存到本地文件系统一个目录,后端一般是apache服务器居多!当前这两台机器完全可以在一台服务器上, ...

  3. React 前端 Nginx 缓存配置

    React 前端 Nginx 缓存配置 最新开发钉钉微应用,上线后发现 2 个问题: 1.每次更新后,需要用户手动刷新获取最新的 HTML 和最新的 js,经常被客户吐槽为什么 bug 还没改,其实早 ...

  4. ASP.NET Core 缓存技术 及 Nginx 缓存配置

    前言 在Asp.Net Core Nginx部署一文中,主要是讲述的如何利用Nginx来实现应用程序的部署,使用Nginx来部署主要有两大好处,第一是利用Nginx的负载均衡功能,第二是使用Nginx ...

  5. nginx 缓存配置及报错解决

    研究了2天的nginx缓存 出现各种报错 我把配置文件修改过后还是报错 1 2 3 4 5 6 7 location ~ /purge(/.*)                 {           ...

  6. Nginx——缓存配置

    缓存配置 对于一个含有大量内容的网站来说,随着访问量的增多,对于经常被用户访问的内容,若每一次都要到后端服务器中获取,会给服务器造成很大的压力.为此,利用反向代理服务器对访问频率较多的内容进行缓存,有 ...

  7. Nginx缓存配置(简易实现CDN功能)

    环境推荐使用openresty,自带了挺多模块的,如果直接使用nginx,需要对缺少的模块进行添加,添加教程参照百度或者OpenResty教程 1.本地站点ETag缓存 示范开启静态文件缓存 环境: ...

  8. nginx 缓存配置详解都是干货

    一.缓存类型 1.服务端缓存 2.代理缓存 3.客户端缓存 4.代理缓存的工作流程: 二.代理缓存配置语法 1.代理缓存路径 配置语法 Syntax: proxy_cache_path path [l ...

  9. Nginx缓存配置教程

    问题引出 假设某电商平台商品详情页需要实现 700 QPS(假设宽带是千兆宽带) 千M局域网宽带网卡速率按照1000进位,所以1Gbps=1,000,000,000bps=125,000,000Bps ...

最新文章

  1. 如何让Ubuntu系统支持WebP图片格式
  2. python爬虫网络请求超时是什么意思_爬虫请求超时设置
  3. 设计模式C++实现(5)——原型模式
  4. mysql workbench简单操作
  5. 1346. 检查整数及其两倍数是否存在 golang
  6. 京东java笔试_2017阿里,百度,京东java面试+笔试大合集,2018的你会吗?
  7. java txt 写入pdf_java学习笔记 读取pdf文件并写成txt文件输出
  8. js中的行为委托和无类编程
  9. yuzu模拟器linux,yuzu模拟器使用教程 yuzu模拟器手机版下载
  10. PyCharm汉化包安装下载及PyCharm无法进行设置问题
  11. Kali-Linux windows 双系统的安装
  12. 经验分享:使用谷歌浏览器下载想要的任意网页视频/音乐的方法
  13. 设计模式-单一职责原著
  14. 【原】JUNIT 源码分析之TestSuite
  15. NMOS和PMOS导通电流 走向
  16. 年薪5w和50w的职场人思考力有什么区别
  17. 交互设计师作品集网站整理
  18. 对于导入UE4中的模型坐标原点不在物体中心的解决办法
  19. Egret引擎的EUI基础使用教程
  20. idea中如何生成程序运行的时序图

热门文章

  1. 前端百题——竟然有五种方式实现flat方法
  2. 硬盘格式化如何恢复数据恢复软件有哪些
  3. 硬盘损坏及Ubuntu18.04双系统重装记录(实操不踩坑安装)
  4. Linux内核IOREMAP驱动
  5. Go : 使用避坑指南 filepath 包(Walk)
  6. 手把手教你完成贪吃蛇的编写(Python)
  7. magento 赠品_使用免费赠品设计Killer Web UI布局–终极指南
  8. CentOS 7 安装网卡驱动
  9. 关于JVM调优的工具及JVM 常见调优参数
  10. 王义辉:浅谈网站用户深度访谈