[Moscow.pm] Распараллелить

Warstone@list.ru warstone на list.ru
Вт Окт 16 08:15:25 PDT 2012


>>Да и базы данных все синхронные, кажется.
>Синхронность/асинхронность бывает разной.
>
>
>Бывает синхронный протокол, синхронная реализация.
>Пример: HTTP + LWP
>Бывает синхронный протокол, асинхронная реализация.
>
>Пример: HTTP + AnyEvent::HTTP
>
>Бывает асинхронный протокол, синхронная реализация.
>
>
>Пример: XMPP + Net::XMPP
>
>Бывает асинхронный протокол, асинхронная реализация.
>Пример: XMPP + AnyEvent::XMPPЭто вообще не в кассу ответ.

А насчет синхронной БД... Кое-кто заблуждается. Работа с Пг может быть асинхронной, например. (Но вот несколько заданий в один коннект вы не засуните, надо создавать линк, это да)

Вообще самый быстрый метод фетча из Пг - это асинхронный фетч из курсора в транзакции частями по ~10К (На самом деле вопрос времени обработки полученных записей, однако на задаче преобразования в CSV у меня получалось именно 10К)... Причем COPY будет только чуть-чуть быстрее.

Правда синхронный вариант фетча на Си будет в 8 раз быстрее, но это детали. Тут все съедает преобразование входящих данных в Перловые переменные, ИМХО. (Оно, кстати, не паралелится. И вот тут можно посмотреть на потоки, чего я не сделал в сове время... Только сейчас мысль пришла)
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20121016/351c701f/attachment.html>


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