Django-Tenants架构下SaaS应用的架构选型及FastAPI微服务租户ID传递与数据库连接问题咨询
Django-Tenants架构下SaaS应用的架构选型及FastAPI微服务租户ID传递与数据库连接问题咨询
大家好,我刚接触Django-tenants,目前想开发一个运行在Kubernetes上的SaaS应用,设计思路是每个租户拥有独立的数据库。为了兼顾系统的扩展性和容错性,我考虑采用FastAPI搭建微服务,把应用的各个模块分开独立管理。
我构思了一个架构示例图来辅助说明我的设计思路。
现在有两个核心问题想请教大家:
- 这种微服务架构方案是否值得推荐?还是说应该坚持使用单体Django架构,牺牲模块的独立扩展性会更稳妥?
- 如果更推荐微服务架构的话,我该如何设计FastAPI来处理租户相关操作?比如通过AJAX请求里的
X-Tenant-ID请求头来判断应该对哪个租户的数据库执行CRUD操作?
另外,我自己已经做了一些尝试:通过AJAX请求的请求头(原尝试中误写为X-Teantn-ID: 1,正确应为X-Tenant-ID: 1)将租户ID传递给FastAPI微服务,但遇到了问题——FastAPI无法通过这个租户ID建立对应的数据库连接,想知道这部分该怎么解决。
备注:内容来源于stack exchange,提问作者Axon
相关产品推荐
相关产品推荐

