[Moscow.pm] Задачка

Михаил Монашёв postmaster на softsearch.ru
Сб Ноя 24 03:34:03 PST 2007


Здравствуйте Евгений,

>> Давно  хочу  понять  как  правильнее  реализовать  следующую  задачку.
>> Предположим  есть  2 сервера. На первом крутится апач с mod_perl, сюда
>> закачивают  картинки, mp3, видео. Тут картинки ресайзятся, mp3 b видел
>> перекодируется.  Потом  по  webdav-у закачивается на второй сервере, с
>> которого  раздаётся  юзерам  nginx-ом.  В  итоге  имеется проблема: на
>> первом  процессор  перегружен, на втором вообще отдыхает. Поэтому есть
>> желание пересчёт файлов перенести на второй сервер.
>>
>> И схема будет следующая: на первый сервер заливается картинка, mp3 или
>> видео,  потом копируется webdav-ом на второй сервере, потом вызывается
>> для  неё обработка (ресайз или пересчёт), потом она начинает раздавать
>> в инет. Причём картинки хотелось бы ресайзить сразу же.
>>
>> Вопрос:  как  правильно второму серверу сказать, что ему нужно делать.
>> Напрашивается  решение  -  дёргать по RPC второй сервер. Но разных RPC
>> много,  Гирман  и  Шварц напримен, а нужно выбрать самый лучший :-) Ну
>> или своё какое-то решение написать.
>>
>> Как бы Вы реализовали подобную задачу?

KE> легко. берется NFS, сервера вяжутся между собой, далее по cron дергаем
KE> содержимое NFS папок
KE> с каждого сервера в разное время. При обработке файла  создаём .lock
KE> файл, чтобы не обрабатывать дважды.
KE> Далее конверченные файлы уже заливаем туда куда нужно.

NFS - это редкостное глюкало.

Да  и зачем гонять по сети туда-сюда файлы? Файл должен обрабатываться
там, где он лежит.

Я  наверное  неверно сформулировал задачу: нужно правильно реализовать
вызов  функций  обработки  файлов,  расположенных на втором сервере, с
первого   сервера.  Варианты  вызова:  "обработай  прямо  сейчас"  или
"обработай как только сможешь".
  

--

С уважением,
Михаил Монашёв, SoftSearch.ru
mailto:postmaster на softsearch.ru
ICQ# 166233339
http://softsearch.ru/
Без бэкапа по жизни.



Подробная информация о списке рассылки Moscow-pm