Распространение рыночных данных в режиме реального времени с использованием ZeroMQ / NFS?

1

Предположим, что у вас есть машина, которая получает от биржи цены акций в реальном времени. Эти цены необходимо перенести на 50 других машин в вашей сети самым быстрым способом, чтобы каждый из них мог выполнять собственную обработку данных.

Каким будет лучший/быстрый способ отправки данных на другие 50 машин?

Я ищу решение, которое будет работать на linux, используя python в качестве языка программирования. Некоторые идеи, которые у меня были:

(1) Отправьте его другим машинам, используя модуль ZeroMQ python's

(2) Сохраните данные в общей папке и попросите 50 машин прочитать ее с помощью NFS

Любые другие идеи?

Теги:
zeromq

3 ответа

1
Лучший ответ

Я бы пошел с zeromq с паб /sub сокетов..

в вашем варианте 2 ваши "клиенты" должны будут обновиться, чтобы получить изменения вашего файла.. например, опрос. Если у вас есть ошибка записи, вам придется обрабатывать это вручную, что также будет непросто..

zeromq прост, надежный и мощный.. Я думаю, что идеально подходит вашему делу..

  • 0
    Круз: спасибо - это ответ, который я искал.
  • 0
    рад помочь
Показать ещё 3 комментария
1

Я уверен, что отправка с ZeroMQ будет значительно быстрее, чем сохранение и загрузка файлов.

Существуют и другие способы отправки информации по сети, такие как сырые сокеты (нижний уровень), реализации AMQP, такие как RabbitMQ (более структурированные/сложные), HTTP-запросы/ответы и т.д. ZeroMQ - довольно хороший вариант, но, вероятно, это зависит от вашей ситуации.

Вы также можете посмотреть структуры для распределенных вычислений, например, в IPython.

  • 0
    благодарю вас. Знаете ли вы, если zeroMQ быстрее / медленнее, чем HTTP-запросы / ответы?
  • 0
    быстрее ... нет необходимости в протоколе http в вашем случае .. я бы пошел с zeroMQ, используя pub / sub сокеты
0

Определенно НЕ используйте файловую систему. ZeroMQ - отличное решение с привязками в Py. У меня есть несколько примеров здесь: www.coastrd.com. Свяжитесь со мной, если вам нужна дополнительная помощь.

  • 0
    благодарю вас. Итак, zeroMQ - это способ распространения данных на другие машины?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню