通过两个 Web 服务器为具有相同底层数据库的同一 Django 应用程序提供服务,我现在可以平衡两个服务器之间的所有请求。
session 存储在数据库中。静态媒体的处理方式与我使用内容交付网络 (CDN) 的方式相同。
但是,如何处理位于接收上传 POST 的网络服务器的本地文件系统上的用户上传的媒体文件? 显然,第二台服务器将丢失这些文件。
什么是可靠的解决方案? NFS 到第三台服务器?持续运行 Unison 或使用像 Mercurial 或 git 这样的 DVCS?
最佳答案
Static media can be handled the same as if I used a content-delivery network (CDN).
这就是你的答案。将用户媒体上传到 CDN。结账django-storages用于 S3 或 Cloudfiles 存储后端。
关于Django负载均衡: How to share user media?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6997674/