Codeigniter CLI As Daemon - PullRequest
       1

Codeigniter CLI As Daemon

1 голос
/ 12 февраля 2012

Я создаю систему очередей, в которой мне нужен набор рабочих для выполнения заданий. Для очереди я планирую использовать Amazon SQS. Для моих работников я хотел бы запускать экземпляры Codeigniter, потому что основное приложение также будет использовать Codeigniter, и я хотел бы поделиться моделями рабочих с моделью основного приложения.

Я вижу, что можно использовать метод контроллера, используя CLI CI (http://codeigniter.com/user_guide/general/cli.html). Однако эти работники должны постоянно работать, если я не убью их. Я изучил эту статью о настройке демонов с помощью php: http://kevin.vanzonneveld.net/techblog/article/create_daemons_in_php/ Этот метод требует, чтобы я использовал этот класс: https://github.com/kvz/system_daemon.

Я не уверен, должен ли я вызывать и запускать System Daemon внутри моего контроллера в CI, чтобы порождать весь экземпляр CI в качестве демона? Или есть подход командной строки, где я могу установить свой вызов метода CI в качестве демона, а затем вообще отказаться от использования класса System Daemon? Какие соображения я должен знать? Я никогда не создавал работающий демон, я только использовал вкладку cron для перезапуска процессов, но в моем случае это не сработает.

1 Ответ

0 голосов
/ 20 декабря 2012

Я не знаю, правильно ли кто-нибудь демонизировал codeigniter (я читал, что многие пытались). У меня была похожая ситуация с вашей, и в итоге я использовал класс System Daemon, который постоянно проверяет SQS, а затем вызывает кодовый код CLI через system (), передавая сообщение в качестве параметра. Мой подход работает в течение ~ 10 месяцев без каких-либо проблем и обслуживает ~ 30-40 тыс. Сообщений в день.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...