Кэширование страниц в memcached и nginx (nginx web memcached cache speed)

Published on Январь 24, 2009 by   ·   Комментариев нет

Логика работы такая:
nginx умеет ходить в memcached за страницей
если такой страницы в memcached нет то получается 404 код ошибки который можно
перехватить и перенаправить на backend
Который проставит нужные данные в кеш и отдаст ответ nginx’u.
(производительность связки nginx+memcached куда выше чем можно добится у
nginx+(apache/mod_perl для X-Accel-Redirect)+ memcached)

Такая связка реально работает и показывает очень приличную производительность
(сколько максимум так можно отдавать не знаю… думаю упрется в ethernet).

PS: что не возможно сделать пока это использование распределенного на несколько
серверов memcached изза того nginx пока не умеет считать какой либо хеш от URL
чтобы на его основе принимать решение в каком из memcached сервер искать данные.
(хотя конечно можно по locations разбросать руками на несколько memcached)

Пример рабочего конфига (сильно упрощенный) :

location =/ajax/SOME_URL.html {
#без этого content_type кривой будет
default_type    text/html;

#идем в memcached
#ключ в memcached '/ajax/SOME_URL.html'
#если у запроса нужны аргументы надо не забыть их сохранить для случая memcached miss
#через set      $ArgsCopy       $args;
#и потом добавить их через rewrite в location /_backend_/
memcached_pass  SOME_MEMCACHED_IP:SOME_MEMCACHED_PORT;

#если в memcached не попали то через 404 error_page запрашиваем данные у backend
#который нам их отдает и записывает итог в memcached
error_page      404 = /_backend_/ajax/SOME_URL.html;
}

#внутренний URL для обработки случаем memcached miss на этот location
location /_backend_/ {
internal;
#идем на backend
proxy_pass http://BACKEND_IP:BACKEND_PORT/;
}











Смотрите также:

Tags: ,

Readers Comments (Комментариев нет)




Да человек я, человек! =)




Exchange 2007

Проведение мониторинга Exchange 2007 с помощью диспетчера System Center Operations Manager 2007 (часть 3)

Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам: Проведение мониторинга Exchange 2007 с помощью диспетчера System ... [+]

Практическое рассмотрение перехода с Exchange 2003 на Exchange 2007 (часть 1)

Введение В этой статье из нескольких частей я хочу показать вам процесс, который недавно использовал для перехода с существующей среды Exchange 2003 ... [+]

Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (часть 2)

Если вы пропустили первую часть этой серии, пожалуйста, прочтите ее по ссылке Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (Часть ... [+]

Мониторинг Exchange 2007 с помощью диспетчера System Center Operations Manager 2007 (часть 2)

Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Мониторинг Exchange 2007 с помощью диспетчера System Center Operations ... [+]

Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 5)

Если вы пропустили предыдущие части этой серии статей, перейдите по ссылкам: Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 1) ... [+]

Установка и настройка Exchange 2007 из командной строки (Часть 3)

If you missed the previous parts in this article series please read: Exchange 2007 Install and Configuration from the command line (Part ... [+]

Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (часть 1)

Инструмент ExRCA Текущий выпуск инструмента предоставляется только в целях тестирования и оснащен 5 опциями: Тест подключения Outlook 2007 Autodiscover Тест подключения Outlook 2003 RPC ... [+]

Развертывание сервера Exchange 2007 Edge Transport (часть 5)

Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам: Развертывание сервера Exchange 2007 Edge Transport (часть 1) Развертывание ... [+]

Установка и настройка Exchange 2007 из командной строки (часть 2)

Если вы пропустили первую статью данного цикла, пожалуйста, перейдите по ссылке: Exchange 2007 Install and Configuration from the command line (Part ... [+]

Использование интегрированных сценариев Using Exchange Server 2007 – часть 2: генерирование отчетов агента Transport AntiSpam Agent

Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Использование интегрированных сценариев Using Exchange Server 2007 – часть ... [+]