Google app engine 谷歌应用引擎模块化项目结构
关于谷歌应用程序引擎中的微服务架构有很多讨论。事实上,文档似乎迫使开发人员倾向于在微服务中构建应用程序。一个项目的前景似乎要么是“整体式”混乱,要么是组织良好的微服务项目。然而,在项目的早期阶段,微服务可能不是合适的方法 鉴于此,是否有一种以模块化方式构建AE项目的推荐项目结构方法?假设我们希望组织的项目包括以下特征:Google app engine 谷歌应用引擎模块化项目结构,google-app-engine,google-cloud-platform,Google App Engine,Google Cloud Platform,关于谷歌应用程序引擎中的微服务架构有很多讨论。事实上,文档似乎迫使开发人员倾向于在微服务中构建应用程序。一个项目的前景似乎要么是“整体式”混乱,要么是组织良好的微服务项目。然而,在项目的早期阶段,微服务可能不是合适的方法 鉴于此,是否有一种以模块化方式构建AE项目的推荐项目结构方法?假设我们希望组织的项目包括以下特征: 服务被组织为一个模块 模块可以轻松访问共享资源(数据存储、任务队列、memcache) 模块提供自己的API 模块可以进行测试 模块符合会话/身份验证服务 我假设的解决方案如
- 服务被组织为一个模块
- 模块可以轻松访问共享资源(数据存储、任务队列、memcache)
- 模块提供自己的API
- 模块可以进行测试
- 模块符合会话/身份验证服务
project/
app.yaml
main.py
requirements.txt
libs/
module1/
datastore/
endpoints/
tests/
module2/
datastore/
endpoints/
tests/
module3/
datastore/
endpoints/
tests/
auth_module/
tests/
endpoints/
sessions_module/
tests/
endpoints/
datastore_module/
tests/
endpoints/
taskqueue_module/
tests/
endpoints/
你的组织可以运作。但是,在中,建议您更好地区分模块和库。不同的微服务可以使用身份验证、会话、数据存储、任务队列。将它们放在一个专用的子目录中,如
packages
关于早期阶段,我同意。理论上,1个微服务=1个团队,在一开始,团队没有人员或预算不存在。然而,陷阱在于积累技术债务,而分裂成一个巨大的整体。。。体验是关键烧瓶蓝图提供了一种很好的方法,可以像这样分解您的web应用程序。