Я строю умную теплицу для университетского проекта, и мы должны следовать архитектуре микросервисов и использовать cherrypy .Мое предлагаемое решение состоит в том, чтобы использовать разные микросервисы для обработки разных телеметрических данных с помощью nginx, docker и docker-compose.
Я использую nginx для обратного прокси-сервера моего интерфейса и всех микросервисов, но как мне справиться с URI??Может ли nginx обрабатывать URI с <ids>
?
Cherrypy не обеспечивает горизонтальный откат, предоставляемый диспетчер в стиле RESTful выглядит просто как монолитный подход.
Мой текущий NGINX:
server {
listen 80;
location / {
proxy_pass http://web:80;
}
location /api/v1/moisture {
proxy_pass http://moisture:5001;
}
location /api/v1/light {
proxy_pass http://moisture:5001;
}
}
Мой API должен выглядеть примерно так /api/v1/greenhouse/<id>/moisture
, где moisture
может быть любой телеметрикой, которую я могу измерить, например humidity
или light
.
Цель состояла в том, чтобы nginx мог отправить запросна /api/v1/greenhouse/<id>/moisture
на влажность и запрос на /api/v1/greenhouse/<id>/humidity
на влажность, поскольку cherrypy не дает решения.