1
westoy 2021-01-06 23:00:56 +08:00
缓存动态页也是静态缓存, 就是 CDN 的基本功能之一, 一般服务端程序自己控制颗粒的才叫动态缓存
nginx 页面缓存一个是时间控制, 一个是自己对页面发 PURGE 请求强制缓存失效 我印象里 nginx 是 master 创建 shm, 然后 worker 共享操作的 |
2
black11black OP @westoy 接触动态缓存概念很少,不是很理解。“自己对页面发 PURGE 请求强制缓存失效”,这个自己指的是客户端发出强制请求还是服务后端发出强制请求
|
3
cominghome 2021-01-07 07:54:17 +08:00
没仔细研究过 nginx,但是动态缓存一般不考虑那么多,设置一个合理的过期时间就可以了
|
4
lvzhiqiang 2021-01-07 08:10:29 +08:00
nginx 一般做静态缓存,动态缓存用的不多,你可以根据自己的业务逻辑写 nginx 嵌入式脚本定时刷新后端接口拿最新数据缓存起来。 缓存是多个 woker 之间共享,因为不能保证 woker 处理一直是同一个真实客户端。
|
5
black11black OP @lvzhiqiang 没用过 nginx 嵌入式脚本,嵌入式脚本实现的目的是 nginx 主动定期向后端请求刷新资源吗?主要是需求上,这个科学计算任务最好是有缓存,否则太慢了。而缓存如果后端通过 nosql 实现的话挺麻烦的,想看看 nginx 有没有成熟方案,不过目前看来似乎是没有,似乎还是用 redis 之类的缓存一下更好。
|
6
watzds 2021-01-07 09:21:29 +08:00 via Android
Nginx Microcaching 嘛
|
7
lvzhiqiang 2021-01-07 09:52:32 +08:00
@black11black 是的,定期执行刷新,把数据加载到本地或者 redis 缓存里面,用户通过接口访问的时候,直接从缓存取数据,不会透传到后端服务。nginx 本身是没有这样的模块。
|