Django中的多租户SAAS

Che*_*lix 23 python django database-design web-applications saas

我在PHP/Laravel中开发了多租户SAAS应用程序,但最近我遇到了在Django/Python中开发一个应用程序的挑战.我仍在学习Django,我真的很喜欢Django休息框架(DRF).但我很难弄清楚下面突出显示的区域,如果有人表现出一些亮点,我会很高兴:

  1. 如何处理子域/域并选择正确的租户数据库
  2. 如何在django中管理和动态处理不同的数据库
  3. 可以从Django管理界面管理多租户应用程序后端
  4. 我将使用队列和其他应用程序scalling技术,需要提示和技巧,如果有的话
  5. 有任何例子
  6. 通过Django开发SAAS时的任何挑战经验

yuv*_*uvi 24

好...

  1. Django的子域
  2. 谁询问了动态数据库,这样的问题在Django(包括,啊哈... ).我不完全确定我理解你的意思是"动态处理不同的数据库",所以我想只是转到我刚才提到的链接,为你的项目找出最好的链接.(也许 - 这可能更相关?)
  3. 查看django-multitenant-schemas这个答案.
  4. 一个关于Disqus(世界上最大的django应用程序之一)背后的人的视频解释了他们如何处理扩展.这里有另一篇有趣的文章.另外,传说中的SO问题是Django Scale.
  5. (和6.)看看这个答案

我希望它足够详细.我知道这可能是一个令人失望的唯一链接答案,但这是它的现实 - Django是一个更新的框架,使用python的web开发仍然不如php.考虑到这一点,要明白django的所有优点(而且很棒),需要更复杂的需求,你必须自己做更多事情.

在这种情况下,你必须弄清楚如何分别完成各个部分,然后将它们全部组合起来.例如,您可以轻松找到创建REST django应用程序的方法,但是您需要弄清楚如何将其与另一个包(例如上述子域)组合.

你可以找到一百万个人用django做怪异事情的例子.它非常强大(当我了解动态模型时,我被吹走了).但是你的应用越复杂,你自己就越需要做.

捡起来,一步一步,回到SO,你遇到的具体问题(或django用户谷歌组).祝好运!