使用cherrypy构建的NGINX反向代理微服务

时间:2019-04-10 16:45:27

标签: python-3.x cherrypy nginx-reverse-proxy

我正在为大学项目建造一座智能温室,我们必须遵循微服务架构,并使用 cherrypy 。我提出的解决方案是让不同的微服务使用nginx,docker和docker-compose处理不同的遥测。

我正在使用nginx反向代理前端和所有微服务,但如何处理uri? Nginx可以使用<ids>处理URI吗?

Cherrypy没有提供水平缩放,提供的RESTful-style dispatcher似乎只是提供整体方法。

我当前的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可以像humiditylight一样是我可以测量的每个遥测。

目标是nginx可以向湿度服务发送/api/v1/greenhouse/<id>/moisture的请求,向湿度服务/api/v1/greenhouse/<id>/humidity发送请求,因为cherrypy无法提供解决方案。

0 个答案:

没有答案