【发布时间】:2018-10-26 12:16:11
【问题描述】:
我正在开发一个微服务应用程序并将它们部署在单个 tomcat 服务器中。所以我没有使用弹簧靴。我只使用弹簧。
假设我们有应用程序调用master-data 和common-service 当我将它们部署到tomcat 中时,我可以通过端口8080 访问它们。
但我希望他们转移到 grpc 通信端点。然后我必须为每个模块安装 grpc 库和 netty。现在我可以在端口6565 和7575 中访问他们的grpc 端点。
我使用了spring bean@PostConstruct注解,分别在不同的端口(6565 and 7575)运行grpc服务器。现在它工作正常。
但是当我向master-data 添加新更改并将其重新部署到tomcat 而不关闭tomcat时,它会给我java.net.BindException: Address already in use
,当我在终端中运行ps -ef | grep netty 时,我可以看到还有一些进程仍在调整中。
似乎 grpc 服务器没有正确关闭,因为 tomcat 没有关闭。
谁能给我一个合适的解决方案?
【问题讨论】:
标签: java spring tomcat netty grpc