Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google app engine 具有独立FE和BE服务的谷歌云_Google App Engine_Google Cloud Platform - Fatal编程技术网

Google app engine 具有独立FE和BE服务的谷歌云

Google app engine 具有独立FE和BE服务的谷歌云,google-app-engine,google-cloud-platform,Google App Engine,Google Cloud Platform,我们正在将一个网站从DigialOcean的VPS迁移到谷歌云。谷歌云可能不会更便宜,但由于它是一个小型网站,我们不想在开发操作上花费太多时间。我们使用的技术有: 作为前端的AngularJS 烧瓶,带蟒蛇3,作为后端 PostgreSQL作为数据库,SQLAlchemy作为ORM GitLab作为git存储库,使用GitLab CI 前端和后端是两个独立的项目,与REST通信,我们希望保持这种方式。原因是我们希望部署一个项目而不必部署另一个项目。不要认为我们在这方面是独一无二的 我们有两个

我们正在将一个网站从DigialOcean的VPS迁移到谷歌云。谷歌云可能不会更便宜,但由于它是一个小型网站,我们不想在开发操作上花费太多时间。我们使用的技术有:

  • 作为前端的AngularJS
  • 烧瓶,带蟒蛇3,作为后端
  • PostgreSQL作为数据库,SQLAlchemy作为ORM
  • GitLab作为git存储库,使用GitLab CI
前端和后端是两个独立的项目,与REST通信,我们希望保持这种方式。原因是我们希望部署一个项目而不必部署另一个项目。不要认为我们在这方面是独一无二的

我们有两个环境:一个生产环境和一个测试环境,我们希望保持这种状态

我们以前没有任何使用谷歌云及其产品的经验,但我们发现的所有示例都是从谷歌应用程序引擎的后端以静态路径服务于前端。从我们的角度来看,这似乎不是一个很好的关注分离,我们不希望有一个单一的存储库

有没有可能通过谷歌云将我们的设置保持在两个独立的项目和两个不同的环境中?

更多信息 后端/app.yaml backend/dispatch.yaml 前端/app.yaml
可以将后端和前端保留在具有两个不同应用程序引擎应用程序的两个不同项目中,并使用HTTP请求在单独的应用程序之间进行通信。在这里,您可以找到有关使用(前端)和使用(后端)部署的Google App Engine应用程序如何处理请求的有用信息

我建议您从阅读开始,特别是这篇文章,以了解谷歌云平台为网站服务提供的所有可能性。一个全面但不完整的架构可能性列表可以是:

  • 在一个项目中,部署一个应用程序引擎应用程序并用于前端和后端。查找有关服务之间通信的可用方法的所有相关信息
  • 使用其他产品,例如
  • 对应用程序进行Dockerize并使用
  • 您还可以将和用于PostgreSQL数据库和CI/CD管道。您可以找到更多信息,并使用它来了解CD for App Engine with Cloud Build,正如您对应用程序的预期

    runtime: python37
    service: test-flask
    
    dispatch:
      - url: "*/api*"
        service: test-flask
    
    runtime: nodejs10
    service: test-angularjs
    handlers:
      - url: /(.*\.(js|css|svg)?(.*))
        static_files: dist/\1
        upload: dist/(.*)
    
      - url: /(.*\.(png|xml|)?(.*))
        static_files: dist/\1
        upload: dist/assets/(.*)
    
      - url: /
        static_files: dist/index.html
        upload: dist/index.html
    
      - url: /(.*(a|pa|friends|faq).*)
        static_files: dist/index.html
        upload: dist/index.html