在两台服务器上的两个 Django 应用程序之间进行有效通信(多租户)

Effectively communicating between two Django applications on two servers (Multitenancy)

在开发每个客户端在两台服务器上运行的应用程序的过程中,我希望能指出正确的方向,即使用什么工具。

[主服务器][客户端数据库服务器]

每个客户端都有自己的服务器,除了作为简单的前端外,还有一个 django 应用程序管理各自的数据。
主应用服务器有一个功能更丰富的前端,使用相同的 models/db 模式。它应该具有对客户端数据库服务器的完整 read/write 访问权限。
最终期望的效果将是典型的 SaaS 类型交易:

client1.djangoapp.com => 连接到 mysql 数据库 @ client1_IP
client2.djangoapp.com => 连接到 mysql 数据库 @ client2_IP
...

提前致谢!

您可以使用不同的设置文件,比方说 settings_client_1.py 和 settings_client_2.py,从通用 settings.py 文件导入通用设置以保持干燥。然后添加相应的数据库设置。

对 wsgi 文件做同样的事情,为每个设置创建一个。比如说,wsgi_c1.py 和 wsgi_c2.py

然后,在您的 Web 服务器中,将 client1.djangoapp.com 的请求定向到 wsgi_c1.py,将 client2.djangoapp.com 的请求定向到 wsgi_c2.py