Данный документ содержит описание работы и информацию о развертке микросервиса предназначенного для вычленения ключевых слов из заданного набора (тэгов) по текстовому описанию мероприятия.
Название: event_theme_analyzer
Структура сервиса:
| Файл | Описание |
|---|---|
event_theme_analyzer.py |
Код микросервиса |
config.yml |
Конфигурационный файл со строкой подключения к RabbitMQ |
run.sh |
Файл для запуска сервиса из Docker контейнера |
requirements.txt |
Верхнеуровневые зависимости |
requirements.lock |
Все зависимости (pip freeze) |
Dockerfile |
Описание сборки контейнера сервиса |
docker-compose.yml |
Изолированная развертка сервиса вместе с RabbitMQ |
docker-compose.local.yml |
Развертка зависимостей для дебаггинга RabbitMQ |
.rest |
Тесты взаимодействия с HTTP эндпоинтами микросервиса |
README.md |
Описание микросервиса |
Проанализировать мероприятие и добавить к нему тэги:
n.rpc.event_theme_analyzer.analyze_events(events)
Args: events = [event_1, ..., event_m]
Returns: list of the events with 'tags' field addedНовая анкета или обновление данных по анкете:
POST http://localhost:8000/analyze HTTP/1.1
Content-Type: application/json
'... a description of the event ...'Препроцессинг мероприятия:
GET http://localhost:8000/preprocess HTTP/1.1Для локального запуска микросервиса требуется запустить контейнер с RabbitMQ. Для этого есть специальный docker-compose.local.yml. Чтобы запустить:
docker-compose --file docker-compose.local.yml up -dЗатем из папки микросервиса вызвать
nameko run event_theme_analyzerДля проверки rpc запустите в командной строке:
nameko shellПосле чего откроется интерактивная Python среда. Обратитесь к сервису одной из команд, представленных выше в разделе rpc
Чтобы запустить микросервис в контейнере вызовите команду:
docker-compose upесли вы не хотите просмотривать логи, добавьте флаг
-dв конце
Микросервис запустится вместе с RabbitMQ в контейнере.