> Если я правильно понял этот набор слов, предлагается вместо кэша > nginx > использовать кэш memcached'а, почему эта связка должна быть > эффективнее > чем один кэш nginx'a?
Нет, будет использоваться только кеш Nginx, но бекенды получат возможность получать по ключу, тело (body) кеша Nginx, по протоколу Memcached, если в Nginx, нет закешированого ответа или кеш требует ревалидации, тогда Nginx переводит этот GET запрос из протокола Memcached в GET запрос протокола HTTP, и отправляет его на бекенд, для получения нового ответа или статуса 304. По сути Nginx сервер будет эмулировать работу Memcached сервера, тогда бекенды будут работать с Nginx как с Memcached. Протокол HTTP не очень подходит для быстрого общения бекендов между собой внутри датацентра, HTTP слишком многословен, часто тело JSON ответа короче HTTP заголовков. Когда бекенд делает запрос к другому бекенду через Nginx, его интересует код ответа, длина ответа и само тело ответа, все остальное это мусор который нужен только браузеру, по этому протокол Memcached подходит лучше, плюс этот протокол мультиплецируется :) Такая связка во многом лучше чем работать с реальным сервером Memcached. 1. Nginx асинхроный и многопоточный, Memcached однопоточный и запросы обрабатывает последовательно. 2. Nginx имеет опции кеша cache_lock, use_stale, min_uses. 3. Nginx умеет ревалидировать кеш 4. Нет холодного старта и размер кеша не ограничен оперативной памятью. 5. Нет лишнего звена и зависимости от Memcached сервера Ну как вам? Posted at Nginx Forum: https://forum.nginx.org/read.php?21,266693,267235#msg-267235 _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru