在没有符号链接的情况下跨服务重用数据存储模型

问题描述 投票:3回答:1

如果App Engine服务A和服务B都依赖于数据存储模型,是否有一种有效的方法在两个服务之间共享该模型而无需复制模型或符号化文件中的模型类定义?

想听听任何人对此的体验。也许将共享依赖项存储在云存储中并从那里提取相关文件?

python google-app-engine google-cloud-datastore
1个回答
2
投票

不是一个答案,只是一些考虑因素。

如果使用GCS存储共享模型,我会发现一些困难:

  • 在应用程序代码中导入模型会有点复杂,您需要使用GCS库来读取文件以进行动态导入,因为它们在本地文件系统中不可用。作为动态导入的副作用,您可能会在IDE中失去一些开发功能(如自动完成,对象结构验证等)。保留它们可能是可能的,但可能不是微不足道的。
  • 在模型文件中划分模型定义(例如,对于部分重用,继承和/或模型间引用)将不是一项简单的任务。除了应用程序代码之外,还需要在模型文件中解决上述问题。
  • 在GAE上部署应用程序代码,GCP上的模型将始终是非原子的,需要特别注意协调部署,并且可能需要向后/向前兼容性来最小化/消除瞬态故障。

恕我直言,符号链接将是一个更简单的方法。

© www.soinside.com 2019 - 2024. All rights reserved.