Возможно вы искали: 'eXtinction'

May 15 2025 19:18:49
  • Как сделать 8Gamers.Ru домашней страницей?
  • Игры
    • База данных по играх
    • Игровые новости
    • Игровая индустрия
    • Обзоры на игры
    • Прохождения игр
    • Гайды к играм
    • Превью о играх
    • Игровые тизеры
    • Игровые арты
    • Игровые обои
    • Игровые скриншоты
    • Игровые обложки
    • Игровые трейлеры
    • Игровое видео
    • Вышедшие игры
    • Ближайшие релизы игр
  • Кино и ТВ
    • База данных по кино
    • Статьи о кино
    • Постеры
    • Кадры из кино
    • Кино трейлеры
    • Сегодня в кино
    • Скоро в кино
  • Комиксы и манга
    • Манга по алфавиту
    • База данных по комиксах
    • Читать онлайн комиксы
    • Читать онлайн манга
    • База персонажей
  • Читы и коды
    • Чит-коды для PC игр
    • Чит-коды для консольных игр
    • Трейнеры
    • Коды Game Genie
  • Моддинг
    • Модификации
    • Карты к играм
    • Программы для моддинга
    • Статьи о моддинге
  • Геймдев
    • Всё о создании игр
    • Список движков
    • Утилиты в помощь игроделу
    • Конструкторы игр
    • Игровые движки
    • Библиотеки разработки
    • 3D-модели
    • Спрайты и тайлы
    • Музыка и звуки
    • Текстуры и фоны
  • Рецензии
    • Игры
    • Кино
    • Аниме
    • Комиксы
    • Мангу
    • Саундтреки
  • Саундтреки
    • Лирика
  • Файлы
    • Патчи к играм
    • Русификаторы к играм
    • Сохранения к играм
    • Субтитры к кино
  • Медиа
    • Видео
    • Фото
    • Аудио
    • Фан-арты
    • Косплей
    • Фото с виставок
    • Девушки из игр
    • Рисунки
    • Рисуем онлайн
    • Фотохостинг
  • Юмор
    • Анекдоты
    • Афоризмы
    • Истории
    • Стишки и эпиграммы
    • Тосты
    • Цитаты
  • Флеш
    • Азартные
    • Аркады
    • Бродилки
    • Гонки
    • Для девочек
    • Для мальчиков
    • Драки
    • Квесты
    • Леталки
    • Логические
    • Мультфильмы
    • Открытки
    • Приколы
    • Разное
    • Спорт
    • Стратегии
    • Стрелялки
Статистика

Статей: 87772
Просмотров: 96111483
Игры
Injustice:  Gods Among Us
Injustice: Gods Among Us
...
Dark Souls 2
Dark Souls 2
Dark Souls II - вторая часть самой хардкорной ролевой игры 2011-2012 года, с новым героем, сюжето...
Battlefield 4
Battlefield 4
Battlefield 4 - продолжение венценосного мультиплеер-ориентированного шутера от первого ли...
Кино
Steins;Gate
Steins;Gate
Любители японской анимации уже давно поняли ,что аниме сериалы могут дать порой гораздо больше пи...
Ку! Кин-дза-дза
Ку! Кин-дза-дза
Начинающий диджей Толик и всемирно известный виолончелист Владимир Чижов встречают на шумной моск...
Обзоры на игры
• Обзор Ibara [PCB/PS2] 18357
• Обзор The Walking ... 18801
• Обзор DMC: Devil M... 19879
• Обзор на игру Valk... 15877
• Обзор на игру Stars! 17764
• Обзор на Far Cry 3 17948
• Обзор на Resident ... 16024
• Обзор на Chivalry:... 17508
• Обзор на игру Kerb... 17981
• Обзор игры 007: Fr... 16619
Превью о играх
• Превью к игре Comp... 17960
• Превью о игре Mage... 14464
• Превью Incredible ... 14721
• Превью Firefall 13479
• Превью Dead Space 3 16334
• Превью о игре SimC... 14730
• Превью к игре Fuse 15442
• Превью Red Orche... 15542
• Превью Gothic 3 16343
• Превью Black & W... 17354
Главная » Статьи » Разное » Проксирование Ruby On Rails через nginx с кэшироваинем в memcached (nginx memcached rails ruby web)

Проксирование Ruby On Rails через nginx с кэшироваинем в memcached (nginx memcached rails ruby web)

Ключевые слова: nginx, memcached, rails, ruby, web, (найти похожие документы)

From: Макс Лапшин
Date: Mon, 26 Jan 2008 18:21:07 +0000 (UTC)
Subject: Проксирование Ruby On Rails через nginx с кэшироваинем в memcached

Оригинал: http://maxidoors.ru/2007/4/24/nginx-memcached-rails

Настройка nginx

С этим все несложно, однако подводные камни все равно есть из-за
упертого мнения nginx-а, что постить можно не куда попало, а только
куда ему кажется возможным.

Опишем конфигурацию при которой по-умолчанию nginx будет ходить к
memcached-у, а при отдаче 404 ошибки (нет страницы), 405 (нельзя
постить в memcached) или чего-то еще, пойдет к рельсам.

user www-data;
worker_processes 1;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
use epoll;
}
http {
upstream mongrel {
server 127.0.0.1:5035;
server 127.0.0.1:5036;
}
server {
listen 80;
server_name maxidoors.ru;
root /var/www/maxidoors/public;
location / {
default_type text/html;
# иначе из memcached-а потечет непойми чего.
# теперь надо указать директивы для proxy,
# потому что мы уже отсюда можем отправиться к монгрелам
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_redirect off;
# делаем хак для обхода непонятного мне поведения nginx-а
if ($request_method = POST ) {
proxy_pass http://mongrel; break;
}
set $memcached_key "totalhockey:production:$uri"
# обратите внимание на формат ключа.
# Рельсы сейчас используют полную херню вместо ключа,
# об этом поподробнее потом.
memcached_pass localhost:11211;
# 404 ошибка получится, когда нет нужной страницы.
# Ничего страшного, идем к рельсам.
error_page 404 = /fallback;
# 502 получим в том случае, если memcached отвалился.
# это не повод стреляться, но сессии скорее всего хранятся тоже в нем.
error_page 502 = /fallback;
}
# Статику отдаём nginx-ом. Аналогично вписать для стилей и яваскрипта
# разница только в том, что для стилей и яваскриптов нельзя ставить
# такое огромное время жизни. Они чаще меняются.
location ~* images/.+.(jpg|jpeg|gif|png)$ {
root /var/www/totalhockey/current/public;
access_log off;
expires 30d;
}
location /fallback {
# повторяем лабуду для прокси
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_redirect off;
if (!-f $request_filename) {
proxy_pass http://mongrel;
break;
}
}
}
}


Всё, nginx настроен. Теперь начинается самое веселое и пока что
недоделанное. Идем к моему тикету и забираем приложенный патч. Он
для edge (1.2.3--1.2.4) рельс, но если надо его можно приспособить и
для более старых версий.

Плюс к этому, надо поставить memcache-client и memcache_fragments.
Второй представляет из себя 10 строчек кода, которые сейчас в процессе
включения в memcache-client.

Плюс к этому надо еще найти строчку normalize! в
actionpack/lib/action_controller/caching.rb и закомментировать её.
После этого запустите memcached с ключом -vv и убедитесь, что рельсы
складывают в кеш страницы ровно по тем урлам, которые приходят от
клиента.


> Evgeniy
> Приветствую всех. Настроил связку nginx+moingrel+memcached Всё
> кэшируется отлично. Такая вот проблемка: По первому запрос не
> кэшированной страницы возвращает в браузер клиента надлежащий
> контент. По второму запросу этой же страницы контент берется из
> кэша но выглядит он как %3Chtml%3E%0A%3Chead% и так далее... В чем
> грабли?

Во всём виноват ключик :raw в параметрах memcache-client. Он
по-умолчанию сериализует кешируемый объект. Это надо отключить.

> Evgeniy
> Я уже написал маленький модуль к nginx.

package unescape;
use nginx;
use Cache::Memcached;

sub unescape{
my $r = shift;

$memd = new Cache::Memcached {
'servers' => ["127.0.0.1:11211"],
'debug' => 0,
'compress_threshold' => 10_000, };
$url = $r->uri;
$body = $memd->get("x.x.x.x$url");
if ( length($body) > 0 ){
$r->send_http_header;
$r->print($r->unescape($body));
return OK;
} else {
return 404;
}
}
422 Прочтений •  [Проксирование Ruby On Rails через nginx с кэшироваинем в memcached (nginx memcached rails ruby web)] [08.05.2012] [Комментариев: 0]
Добавил: Ukraine Vova
Ссылки
HTML: 
[BB Url]: 
Похожие статьи
Название Добавил Добавлено
• Проксирование Ruby On Rails через n... Ukraine Vova 08.05.2012
Ни одного комментария? Будешь первым :).
Пожалуйста, авторизуйтесь для добавления комментария.

Проект входит в сеть сайтов «8Gamers Network»

Все права сохранены. 8Gamers.NET © 2011 - 2025

Статьи
Рецензия на Pressure
Рецензия на Pressure
Чтобы обратить на себя внимание, начинающие маленькие разработчики, как правило, уходят в жанры, ...
Рецензия на Lost Chronicles of Zerzura
Рецензия на Lost Chron...
Игры, сделанные без любви и старания, похожи на воздушный шар – оболочка есть, а внутри пусто. Lo...
Рецензия на The Bridge
Рецензия на The Bridge
«Верх» и «низ» в The Bridge — понятия относительные. Прогуливаясь под аркой, можно запросто перей...
Рецензия на SimCity
Рецензия на SimCity
Когда месяц назад состоялся релиз SimCity, по Сети прокатилось цунами народного гнева – глупые ош...
Рецензия на Strategy & Tactics: World War 2
Рецензия на Strategy &...
Название Strategy & Tactics: World War II вряд ли кому-то знакомо. Зато одного взгляда на ее скри...
Рецензия на игру Scribblenauts Unlimited
Рецензия на игру Scrib...
По сложившейся традиции в информационной карточке игры мы приводим в пример несколько похожих игр...
Рецензия на игру Walking Dead: Survival Instinct, The
Рецензия на игру Walki...
Зомби и продукция-по-лицензии — которые и сами по себе не лучшие представители игровой биосферы —...
Обратная связь | RSS | Донейт | Статистика | Команда | Техническая поддержка