Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
nginx + memcached
Здравствуйте, Михаил!
Wednesday, July 25, 2007, 10:17:02 PM, you wrote:
ММ> Кроме того, сейчас memcached работает не только по tcp,
ММ> но и по udp и через сокет. Только не все клиенты это умеют.
memcached через udp -- это в действительности очень мало кому надо будет
потому что появятся новые проблемы из-за unreliable delivery upd пакетов
unix domain socket не выходит за пределы localhost, поэтому в 99% случаев
применения memcached IMHO удобнее всего будет работать через протокол tcp
ММ> А в последней версии 1.2.3 ещё треды вроде добавили.
эта возможность нужна в том частном случае, когда сервер memcached
так сильно загружен запросами, что CPU становится его узким местом
PS насколько я понимаю, сейчас возможен только такой
способ взаимодействия nginx с backend через memcached:
backend =(1)=> memcached =(2)=> ngx_memcached_module =(3)=> ngx_gzip_module
=(4)=> client
backend помещает в memcached text/html в несжатом виде,
потом при каждом запросе клиента nginx берет из memcached
html-странички, сжимает их через gzip и отдает клиенту.
при переходах (1) и (2) неэффективно используется память,
а при переходе (3) - неэффективно используется процессор.
интереснее было бы хранить в memcached уже сжатый через
gzip контент, чем будем хорошо экономить память, и только
для небольшой части http клиентов потребуется этот контент
разархивировать перед отдачей; почти все современные браузеры
уже более-менее нормально умеют работать с ответами сжатыми gzip.
PPS аналогично и при хранении кеша в файловой системе, а не в памяти,
- c жесткого диска быстрее прочитается 10-20 килобайт, чем 100-200.
--
Best regards,
Gena mailto:makhomed@xxxxxxxxxxxxxx
|