我有一堆 Spring Boot 微服务在独特的端口中运行。我们如何在生产中处理这些微服务?
在生产中,我们只需要DNS,我们如何处理DNS映射。
例如:
example-microservice-1(端口:8001)
example-microservice-2(端口:8002)
示例-微服务-3(端口:8003)
example-microservice-4(端口:8004)
example-microservice-5(端口:8005)
我想要像下面这样的东西,
myprod.com/example-microservice-1
myprod.com/example-microservice-2 ...
而不是,
myprod:8001/example-microservice-1
myprod:8002/example-microservice-2
(由于声誉较低,删除了上面的“https/http”)
所有微服务都存在于不同的代码库中,构建时将创建单独的可运行 jar。
最佳答案
只需安装 nginx 并对您的微服务进行反向代理即可。
nginx 示例:
server {
listen 80 default_server;
server_name myprod.com;
location /example-microservice-1 {
proxy_pass http://localhost:8001;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
location /example-microservice-2 {
proxy_pass http://localhost:8002;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
关于java - 如何高效处理Spring Boot微服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45023334/