这将是一个广泛的话题,所以请容忍我。因此,我创建了一个微服务应用程序,一开始是我的爱好,现在,在几个月的时间里,我投入了一些有用的东西。因此,到目前为止,我对maven和Eureka客户端使用了STS (spring工具)。我有一个独立的微服务互相交流,还有一个UI微服务向你展示结果。这是一个单一的页面应用程序,我将设置它的结构(GitHub回购也一样):
--my-app
--my-microservice-discovery
--my-microservice-domain (jdk12)
--my-microservice-searcher
--my-microservice-orchestrator
--my-microservice-ui
--my-transferobjects (common jar not microservice)
--pom.xml (my main module pom)所以,这就是我在GitHub中处理的问题--我为我的应用程序创建了一个存储库,其中包含了所有这些春季引导项目,在IDE中,一切都能工作,现在有了一些云提供商的部署部分。我选择Heroku,因为我在过去对它有过一些经验,但也因为我无法与Google一起工作(尽管他们现在有一个很有吸引力的启动计划)。从Google构建连接到私有的GitHub回购是很痛苦的,但是Heroku用风格来做这件事。
我决定使用命令行,因为这是我必须在云上处理的方式,而这正是所有问题的根源所在,我在IDE管理得很好但还没有为maven正确定义的JDK版本之间出现了许多依赖问题。
我仍然设法使我的本地构建成功(命令行),但是我不得不做一些硬代码配置来修复我的微服务域pom的jdk12,类似于我的传输对象的修复,但是由于隆布克问题,我不知道为什么我必须为这个项目专门提供jdk8。
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>12</source>
<target>12</target>
<executable>/home/Downloads/jdk-12</executable>
</configuration>
</plugin>
</plugins>
</build>我的问题如下:
这些是我的忧虑,请指点。
发布于 2020-09-27 09:44:06
好的,我将回答我自己的问题,我做了一些阅读和@酷上面的建议,我最终采用了多个存储库的方式,实现了所需的东西。我之所以选择Heroku,也是因为那里的环境感觉很简单,而且像我这样简单的应用程序在最新的二进制文件上也没有任何问题。我跟踪了设置我的尤里卡服务器、客户端和Procfile的几个链接,以及仪表板上的应用程序设置页面中的一些环境变量目录。不用说,我还维护了多个配置文件(dev、prod、test),对于ui,我使用了vaadin,因此在您的UI应用程序pom.xml中需要一些额外的步骤来生产。
我有点担心我的服务没有终止在heroku上的任何活动的方式,再加上现在关于彼此之间服务发现的问题。因此,我的eureka服务器报告了>所有实例,但它们不能相互联系。
现在我正忙着其他的事情,比如。一个月后,将错误修复为启动。我很快就会就此提出一个问题;)
https://stackoverflow.com/questions/64028336
复制相似问题