首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Maven工具链和heroku/云部署

Maven工具链和heroku/云部署
EN

Stack Overflow用户
提问于 2020-09-23 12:47:27
回答 1查看 99关注 0票数 0

这将是一个广泛的话题,所以请容忍我。因此,我创建了一个微服务应用程序,一开始是我的爱好,现在,在几个月的时间里,我投入了一些有用的东西。因此,到目前为止,我对maven和Eureka客户端使用了STS (spring工具)。我有一个独立的微服务互相交流,还有一个UI微服务向你展示结果。这是一个单一的页面应用程序,我将设置它的结构(GitHub回购也一样):

代码语言:javascript
复制
--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。

代码语言:javascript
复制
<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>

我的问题如下:

  1. 我们是否有一个工具链示例来处理这个不同的JDK编译问题,另外,我们是否总是必须提供JDK本地安装路径?
  2. 如何将它部署到Heroku上,它如何知道我的jdk12在哪里,或者仅仅在pom中定义源/目标版本将在云上发挥作用,Heroku也支持jdk12或google?
  3. 这是一个好主意,有多回购或单回购部署,我仍然可以改变,但我喜欢这样。
  4. 我知道我需要为我的每个微服务创建对接映像,但是有人需要先在本地创建一个教程,或者是一些GitHub回购,这样我就可以查看一些例子了。
  5. 一旦我在每个微服务中添加了所有这些docer文件,这是否足以部署其生产级别?我读了很多关于APIGateway,负载平衡器的文章。它们适合我的建筑。
  6. 我还将本地主机用于EurekaServer和Eureka /冒牌客户端属性,它是否也能在云上以同样的方式工作,而尤里卡服务器将能够找到我的所有服务,就像在本地一样,不需要在云上进行配置更改?
  7. 谷歌云或Heroku是更好的选择,谷歌云目前似乎有点麻烦。

这些是我的忧虑,请指点。

EN

回答 1

Stack Overflow用户

发布于 2020-09-27 09:44:06

好的,我将回答我自己的问题,我做了一些阅读和@酷上面的建议,我最终采用了多个存储库的方式,实现了所需的东西。我之所以选择Heroku,也是因为那里的环境感觉很简单,而且像我这样简单的应用程序在最新的二进制文件上也没有任何问题。我跟踪了设置我的尤里卡服务器客户端Procfile的几个链接,以及仪表板上的应用程序设置页面中的一些环境变量目录。不用说,我还维护了多个配置文件(dev、prod、test),对于ui,我使用了vaadin,因此在您的UI应用程序pom.xml中需要一些额外的步骤来生产。

我有点担心我的服务没有终止在heroku上的任何活动的方式,再加上现在关于彼此之间服务发现的问题。因此,我的eureka服务器报告了>所有实例,但它们不能相互联系。

现在我正忙着其他的事情,比如。一个月后,将错误修复为启动。我很快就会就此提出一个问题;)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64028336

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档