Я хочу создать REST API, где можно было бы запустить веб-сканер и управлять сканером через API.Допустим, я создаю ресурс «Паук»
- C - Spider.create -> процесс поиска икры
- R -
- U - @ spider.update ->отправить команду для обработки (например, щелкнуть ссылку с селектором, извлечь данные из элемента с селектором), прочитать ответ, отправить ответ обратно клиенту
- D - @ spider.destroy -> отправить команду выхода в процесс, очистить-up при необходимости
сканер был бы скриптом с циклом, ожидающим ввода и выполнения команд в блоке begin-rescue
Идея состоит в том, чтобы иметь разные скребки (ruby, python,perl) который может порождаться из рельсов и который затем может ожидать ввода и отправлять выходные данные в API рельсов.
Мой вопрос заключается в том, как порождать процессы из рельсов таким образом, чтобы я мог общаться с ними?
Нужна ли мне система обмена сообщениями вроде zeromq?
Куда мне поместить код - контроллер или модель?
Я просто ищу предложения по использованию драгоценных камней / идиом / лучших практик и вещей, которых следует избегать.