Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 9, 2011 10:04:59

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

распределенные вокеры Что посоветуете?

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

Как посоветуете организовать очередь заданий?

Инет выдает:
http://celeryproject.org/
http://packages.python.org/Pyro4/intro.html



Офлайн

#2 Окт. 9, 2011 17:30:38

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

распределенные вокеры Что посоветуете?

ZeroMQ Push-Pull



Офлайн

#3 Окт. 9, 2011 18:17:28

ziro
От:
Зарегистрирован: 2009-08-13
Сообщения: 225
Репутация: +  8  -
Профиль   Отправить e-mail  

распределенные вокеры Что посоветуете?

+1 celery - очень достойная вещь, легко использовать, плюс там поддерживаемых очередей навалом.

Если нужна масштабируемость на кластер - посмотрите на http://discoproject.org/ - сам не использовал, но в свое время смотрел с целью возможного применения.



Офлайн

#4 Окт. 9, 2011 19:36:52

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

распределенные вокеры Что посоветуете?

:) celery на вид очень хороший но под виндами сразу падает

python -m celery.bin.celeryd
Traceback (most recent call last):
File "C:\comp\Python26\lib\runpy.py", line 122, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "C:\comp\Python26\lib\runpy.py", line 34, in _run_code
exec code in run_globals
File "C:\comp\Python26\lib\site-packages\celery-2.3.3-py2.6.egg\celery\bin\celeryd.py", line 208, in <module>
main()
File "C:\comp\Python26\lib\site-packages\celery-2.3.3-py2.6.egg\celery\bin\celeryd.py", line 187, in main
worker.execute_from_commandline()
File "C:\comp\Python26\lib\site-packages\celery-2.3.3-py2.6.egg\celery\bin\base.py", line 72, in execute_from_commandline
return self.handle_argv(prog_name, argv[1:])
File "C:\comp\Python26\lib\site-packages\celery-2.3.3-py2.6.egg\celery\bin\base.py", line 100, in handle_argv
return self.run(*args, **vars(options))
File "C:\comp\Python26\lib\site-packages\celery-2.3.3-py2.6.egg\celery\bin\celeryd.py", line 95, in run
kwargs.get("pool") or self.app.conf.CELERYD_POOL)
File "C:\comp\Python26\lib\site-packages\celery-2.3.3-py2.6.egg\celery\concurrency\__init__.py", line 13, in get_implementation
return get_cls_by_name(cls, ALIASES)
File "C:\comp\Python26\lib\site-packages\celery-2.3.3-py2.6.egg\celery\utils\__init__.py", line 313, in get_cls_by_name
module = imp(module_name)
File "build\bdist.win32\egg\importlib\__init__.py", line 37, in import_module

File "C:\comp\Python26\lib\site-packages\celery-2.3.3-py2.6.egg\celery\concurrency\processes\__init__.py", line 9, in <module>
from os import kill as _kill
ImportError: cannot import name kill



Офлайн

#5 Окт. 9, 2011 20:06:21

o7412369815963
От:
Зарегистрирован: 2009-06-17
Сообщения: 1986
Репутация: +  32  -
Профиль   Отправить e-mail  

распределенные вокеры Что посоветуете?

Андрей Светлов
ZeroMQ Push-Pull
Тоже бы zmq выбрал, т.к. более ничего и не надо.

Офлайн

#6 Окт. 9, 2011 21:09:15

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

распределенные вокеры Что посоветуете?

Большое спасибо за советы. Буду читать
http://www.zeromq.org/
http://zeromq.github.com/pyzmq/morethanbindings.html



Офлайн

#7 Окт. 10, 2011 06:10:46

o7412369815963
От:
Зарегистрирован: 2009-06-17
Сообщения: 1986
Репутация: +  32  -
Профиль   Отправить e-mail  

распределенные вокеры Что посоветуете?

doza_and
Большое спасибо за советы. Буду читать
http://www.zeromq.org/
http://zeromq.github.com/pyzmq/morethanbindings.html
Систему можно сделать асинхронной - один поток с неблокирующими методами…

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version