5 июня 2014 г., 15:46 пользователь Харпалёв Иван
<[email protected]> написал:
> Добрый день, могучий MoscowPM
>
> Опять про параллельную обработку.
>
> Хочется написать вот такую схему обработки ввода:
> master создаёт work'ов,
> читает порции из файла, раздаёт порции worker'ам
> ждёт, пока worker обработает, получает ответ worker'a
> пишет результат в файл.
> Так же мастер буфереизует вывод, чтобы выход писался в правильном порядке.
>
> Самое туманное:
> Как передавать данные от мастера к worker'у и Обратно?!!!!
> Как ждать готовности?!!!
> Должна ли такая схема (работа с диском из одного места) дать ускорение по
> сравнению с чтением/записью файла в каждом worker'е?

К слову, все это легко можно сделать через Gearman :)

> смотрел на Coro, увидел Coro::Simaphore, Coro::Signal ... но не пойму:
>   как сделать разделяемую память, (как быстро передавать данные между
> мастером и worker'ом внутри Perl)?
>   как сделать неблокирующее ожидание готовности одного из worker'ов (при
> котором можно заниматься вводом-выводом)?
>
> Подскажите, на чём и как такое писать!!
> Спасибо!
>
> Уважение
> Иван Харпалев
>
>
>
> --
> Moscow.pm mailing list
> [email protected] | http://moscow.pm.org
>



-- 
Best regards,
Ilya Chesnokov
-- 
Moscow.pm mailing list
[email protected] | http://moscow.pm.org

Ответить