程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了将不同的语言服务部署到同一应用程序[Google App Engine]大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决将不同的语言服务部署到同一应用程序[Google App ENGIne]?

开发过程中遇到将不同的语言服务部署到同一应用程序[Google App ENGIne]的问题如何解决?下面主要结合日常开发的经验,给出你关于将不同的语言服务部署到同一应用程序[Google App ENGIne]的解决方法建议,希望对你解决将不同的语言服务部署到同一应用程序[Google App ENGIne]有所启发或帮助;

appspot.com由于url路由规则,结果应用程序的命名与您提到的命名略有不同。从通过URL路由:

因此,假设您的服务已命名pythonjava而您的应用程序已命名,app则您的appspot.comURL为:

python-dot-app.appspot.com
java-dot-app.appspot.com

但是您可以根据需要使用自定义域将它们映射。

至于构建这样的应用程序:

  • 请记住,其中一项服务 我命名default(或保持未命名)

  • 为每个服务创建应用子目录(以下是在文档中不再找到但在Google App ENGIne应用程序中的默认服务/模块可以作为非同类产品的同级产品中找到的曾经被推荐的多服务应用程序结构图)默认的文件夹结构之一?)

  • 将每个服务代码的全部内容复制到相应的子目录中

  • 识别应用程序级配置文件(cron.yamldispatch.yamlqueue.yamlindex.yaml在应用级目录或它们的Java等价物),你必须和移动它们的上一级,(你可能需要合并他们,如果这样的配置文件存在于两个服务)。您可能需要为这些文件选择一种语言,我会选择python。Cron作业需要配置目标(请参阅Cron作业定义中的target行)。

请记住,部署一个/所有模块 可能 不一定像您习惯的那样更新这些文件,而是可能需要显式部署它们- 请查看相应的服务配置文档。在部署服务时,您应格外注意可能会覆盖这些配置,您可能需要提出特定的部署顺序。

  • 添加dispatch.yaml文件并重新访问/调整服务的请求路径名称空间,以确保将每个请求正确地定向到各自的服务,可能是一个好主意(可能是强制性的)。cron作业特别注意,从Cron作业定义的 target行开始:

https://cloud.google.com/appENGIne/docs/python/config/cronref#cron_job_definitions

解决方法

我有两个应用程序,一个在Python中,另一个在Java中。

在Python中,我的应用程序位于中设置的service下,该服务app.yamlcron.yaml调用该服务。

在我的(Maven)Java应用程序中,它不在服务下,因此它是默认服务(如有需要,我将对其进行更改)。该应用程序也被称为。./WEB- INF/cron.xml文件以及有关该应用程序的信息../WEB-INF/appENGIne-web.xml

目前他们之间没有任何联系,我将两个应用程序都部署到了不同的项目中

我想将它们融合在一起,并将它们放在与以下项目相同的项目中

python-app.project.appspot.com

java-app.project.appspot.com

而不是当前

python-app.project1.appspot.com

project2.appspot.com

我没有尝试使用app.yaml和appENGIne-web.xml文件,因为我不知道这些文件是否要修改。

如何使用不同的语言(Python和Java)制作不同的服务(模块)

大佬总结

以上是大佬教程为你收集整理的将不同的语言服务部署到同一应用程序[Google App Engine]全部内容,希望文章能够帮你解决将不同的语言服务部署到同一应用程序[Google App Engine]所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。