ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

фронтенд для MogileFS


  • To: nginx-ru@xxxxxxxxx
  • Subject: фронтенд для MogileFS
  • From: Olexander Shtepa <isk@xxxxxxxxxxxx>
  • Date: Mon, 19 May 2008 14:26:18 +0300
  • Organization: IDE Group

Пытаюсь прикрутить MogileFS для сайтов. Всё было хорошо, но обнаружилось 
препятствие.

Вот типичная конфигурация MogileFS:
(Clients) <-> (Perlbals) <-> (mod_perls) <->(Trackers)
                 |
                 |-    <-> (DAV server 1)
                 |-    <-> (DAV server 2)
                 |-    <-> (DAV server 3)
                 --    <-> (DAV server N)
mod_perl после обращения к трекеру возвращает хидер (например):
x-reproxy-url: http://192.168.1.13:7500/dev9/0/000/938/0000938648.fid 
http://192.168.1.10:7500/dev6/0/000/938/0000938648.fid";
который указывает Perlbalу проксировать запрос на DAV сервера.
Главное здесь то что у Perlbalа есть 2 альтернативных урла для загрузки, что 
даёт отказоустойчивость.

При попытке заменить Perlbal на nginx отказоустойчивость теряется, так как 
nginx может проксировать только 1 урл за раз:
 location /photos {
   proxy_pass   http://cluster;
 # X-Accel-Redirect: /mogilefs
 # x-reproxy-url: http://192.168.1.13:7500/dev9/0/000/938/0000938648.fid
 }
 location /mogilefs {
   internal;
   set        $reproxy $upstream_http_x_reproxy_url;
   proxy_pass $reproxy;
 }

К сожалению аргументом для proxy_pass не может выступать список урлов :(.
Что можете посоветовать?
Очень не хочется поднимать Perlbal паралельно nginxу только для этой задачи...


 




Copyright © Lexa Software, 1996-2009.