问题描述
阅读了许多与 this one 类似的其他主题后,我仍然不确定什么是最好的。
假设我有一个负载平衡器,其中有 2 个服务器,其中有 Nginx + Django,然后是一个单独的数据库服务器和 3 个带有图像和视频的存储服务器。
我如何最好地提供来自 3 个存储服务器的媒体文件?我目前计划做的是为所有请求保留我的 2 个入口点。对媒体文件的请求将由 Django 在那里进行身份验证,然后我将使用 X-accel 直接代理将媒体请求传递给存储服务器。但是,Nginx 文档说明了这一点:
当 Nginx 代理请求时,它会将请求发送到指定的代理服务器,获取响应并将其发送回客户端。
这是否意味着 2 个入口点服务器的负载相同?我是这样理解的,效率不高。
我想要实现的是这样的:
请求由 Django 验证,重定向到存储服务器,存储服务器将响应直接发送到客户端。这可能吗?
我想服务媒体文件的最有效方式是删除应用服务器步骤,如下所示:
然而,这意味着我无法使用 Django 验证媒体请求,必须使用安全链接,这是 Nginx 的 secure link module。这些链接的安全性如何?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)