【发布时间】:2010-03-28 08:05:17
【问题描述】:
我正在创建多站点平台。任何人都可以使用我的平台制作简单的网站。我打算使用 django multidb 支持。一个站点一个数据库。我需要根据 request.get_host() 更改数据库设置。 我认为我不是好主意。提示其他决定?它是如何在不同的网站设计师身上实现的?
【问题讨论】:
标签: python django django-middleware django-orm
我正在创建多站点平台。任何人都可以使用我的平台制作简单的网站。我打算使用 django multidb 支持。一个站点一个数据库。我需要根据 request.get_host() 更改数据库设置。 我认为我不是好主意。提示其他决定?它是如何在不同的网站设计师身上实现的?
【问题讨论】:
标签: python django django-middleware django-orm
您可能需要重新考虑为到达站点使用单独的数据库。在查看多数据库源时,您似乎会遇到一些可扩展性问题,具体取决于您要支持的站点数量:
目前所有的数据库都设置在settings.py中。这可能会导致一些问题:
更好的方法可能是使用单个数据库并根据需要将站点/帐户与每条记录相关联。
【讨论】:
您可以为每个“站点”设置一个站点,使用它自己的设置文件,监听它自己的套接字,使用相同的代码库。我正在这样做,我可以轻松地在中型服务器上支持 30 多个并发站点。配置和启动脚本的可维护性是唯一的问题。
【讨论】: