缓存

缓存用于减轻后端服务压力。缓存可以分为 服务端缓存(redis,ehcache)、客户端缓存(localstorage)、代理缓存(nginx)。nginx的缓存服务就是代理缓存。

1556159422900

proxy_cache

proxy_cache的配置同样位于proxy代理模块,相关配置比较多,一下是较为常用的几个配置:

示例配置

如何清除缓存

  • 清空对应缓存目录:rm -rf 缓存目录内容,无法清空指定的url缓存

  • 使用第三方模块ngx_cache_purge

如何让部分页面不缓存

示例:

分片请求

1.9版本增加了slice size提供了大文件分片请求的支持:

  1. 前端请求大文件,nginx去服务端获取文件大小

  2. 根据定义的slice片的大小,nginx进行切片,分为多个请求,请求服务端

优势:每个子请求收到的数据都是一个独立的文件,其他请求不会受影响

缺点:如果slice大小设置的不合理(slice太小),会导致文件描述符耗尽等情况

最后更新于

这有帮助吗?