Язык программирования для разработки многоплатформенного демона - PullRequest
1 голос
/ 01 июля 2011

Я занимаюсь разработкой приложения, которое должно выполнять много пакетной обработки (например, запрос whois). Чтобы обеспечить лучшую производительность, я хотел бы разделить работу между разными компьютерами. Для этого я планирую написать программу, которая будет запрашивать очередь заданий на главном сервере, извлекать одно задание, обрабатывать его и обновлять результат на главном сервере. Фактическая обработка будет выполняться PHP. Я программирую только нужно опросить очередь заданий и вызвать локальный скрипт php. Работа должна выполняться каждые несколько секунд, поэтому я не могу использовать cron.

Кто-нибудь может предложить язык программирования, который может легко создать такого демона? Есть ли какая-либо программа, которая уже делает это?

Спасибо

1 Ответ

1 голос
/ 01 июля 2011

Несколько заметок

  1. Вы можете использовать cron для запуска каждые несколько секунд (хотя и с помощью хаков)
  2. Вам понадобится какая-то распределенная очередь для хранения ваших заданий (RabbitMQ хорош, или вы можете использовать ZooKeeper)
  3. В зависимости от выбранной очереди, во многих языках программирования есть API для удаления заданий из очереди.

Существует множество инструментов с открытым исходным кодом, которые будут выполнять похожие действия, но это будет во многом зависеть от того, насколько сложны ваши потребности.

  1. Hadoop - сложный продукт, который позволит вам легко реализовать это
  2. workerpool - это библиотека python, которая проста в использовании, но она многопоточная и будет работать на одной машине. Так что это на простом конце спектра.
...