我有一个设置,我将有大约 50 个站点使用相同的代码,配置略有不同。与其一遍又一遍地部署相同的代码,在不同的文件夹和存储库中复制,Flask 中是否有任何方法可以将站点的工作代码集中为某种库?
在 Django 中,它们有点像这样:
https://docs.djangoproject.com/en/dev/ref/contrib/sites/
一些想法
部署 50 个 UWSGI 实例,复制相同的代码和不同的配置
部署 50 个 UWSGI 实例,将 python 代码添加为一种模块或扩展,因此只有一个代码实例:http: //flask.pocoo.org/docs/extensiondev/
部署 1 个 UWSGI 实例,它只有一个代码实例并处理不同的主机名:http: //flask.pocoo.org/docs/patterns/appdispatch/
我正在复制的代码旨在查询 API 并显示结果。这些站点之间的差异有两个方面:
模板 - 虽然网站看起来很相似,但它们不会完全相同。它们的 CSS 和图像会略有不同。
API 查询。大多数较小的站点用于城镇。这意味着来自这些站点的 API 请求将稍作修改,以便仅返回该区域的结果。
- 默认情况下,sitelondon.com 可能仅在伦敦查询 API 项目
- sitehtml.com 可能会在 API 中查询默认具有“html”关键字的项目
我的重点是用户的性能。我最初将在具有 2GB RAM 的服务器上运行这些,这应该足够了。