Django:使用单个数据库进行水平扩展
Django: Horizontal scaling with a single database
我有一个 django 实例即将达到其吞吐量极限。我想创建第二个实例并开始水平扩展。
我知道在处理数据库只读副本时需要一些最小的 django 配置,但是在只使用单个数据库的情况下:我需要做什么,或者在添加数据库时我应该注意什么?二审?
郑重声明,我使用 render.com(它类似于 heroku),他们的缩放解决方案只为我们提供了一个滑块,并且会自动向上或向下移动实例。我需要对 django + gunicorn + uvicorn 进行任何配置吗?它也会自动位于他们的负载均衡器后面。
作为参考,我的堆栈是:
- Django + DRF
- Postgres
- 用于缓存和代理的 Redis
- 用于异步的 Django-q
- Cloudflare
您可以在 Render 上启用自动缩放,它会根据您的应用程序在所有实例中的平均 CPU and/or 内存利用率自动向上(和向下)缩放您的实例。您无需更改 Django 应用程序。
我有一个 django 实例即将达到其吞吐量极限。我想创建第二个实例并开始水平扩展。
我知道在处理数据库只读副本时需要一些最小的 django 配置,但是在只使用单个数据库的情况下:我需要做什么,或者在添加数据库时我应该注意什么?二审?
郑重声明,我使用 render.com(它类似于 heroku),他们的缩放解决方案只为我们提供了一个滑块,并且会自动向上或向下移动实例。我需要对 django + gunicorn + uvicorn 进行任何配置吗?它也会自动位于他们的负载均衡器后面。
作为参考,我的堆栈是:
- Django + DRF
- Postgres
- 用于缓存和代理的 Redis
- 用于异步的 Django-q
- Cloudflare
您可以在 Render 上启用自动缩放,它会根据您的应用程序在所有实例中的平均 CPU and/or 内存利用率自动向上(和向下)缩放您的实例。您无需更改 Django 应用程序。