У меня есть приложение PHP, работающее на последней версии Nginx. Я хотел бы кэшировать каждую полную страницу для определенного URL-адреса с помощью memcached, а также иметь возможность очищать / аннулировать определенную кэшированную страницу с помощью нескольких команд PHP.
Мое исследование предлагает использовать эти 2 модуля:
http://wiki.nginx.org/HttpSRCacheModule
http://wiki.nginx.org/HttpMemcModule
Это лучший / самый простой способ? Любые другие предложения?
Ты можешь использовать встроенный модуль Memcache Конфигурация проста:
server {
location / {
set $memcached_key "$uri?$args";
memcached_pass host:11211;
error_page 404 502 504 = @fallback;
}
location @fallback {
proxy_pass http://backend;
}
}
Аннулирование кэша не является прямым, и, если возможно, используйте короткий TTL, который заставляет кэш быть ненавязчивым и аннулировать время. В противном случае ищите практики Memcache Вот.
Других решений пока нет …