[英]Django: Static/Media Files different server
我担心Django中的媒体文件。 我只是想知道为什么某些教程建议为媒体使用其他Server实例?
Postgre也有同样的问题。
目前,我的应用程序正在GCE中运行。
Python 2.7,带nginx和uWSGI的Django 1.8
Compute Engine实例:n1-standard-2(2个vCPU,7.5 GB内存)
您通常会出于各种原因考虑将运行python的应用服务器,数据库以及静态文件和媒体文件分开。
原因之一是可伸缩性-如果您的站点承受高负载,则可以轻松检测瓶颈并设置另一台服务器来共享负载。
除了应用程序服务器和数据库之外,您的静态文件和/或媒体也可以扩展。 如果您的应用服务器无法再处理负载,则该负载不能自动应用于数据库或静态/媒体内容,反之亦然。 这始终取决于您的用例。 将前面的内容分开可以使您更加灵活。
另一个原因是安全性。 如果存在安全漏洞(例如django代码),攻击者可以利用该漏洞在您的主机上运行他/她想要的任何代码,那么其他内容就无法在主机上直接使用。
如django文档中所述,您可能希望为静态文件运行非常轻量级的设置,而无需从Web服务器内部执行任何代码(没有python,php或其他任何东西-只是静态文件)
硬件要求取决于您的负载和您选择的软件。 如果您不希望负载过高,而只有一台服务器可用,那么从一台主机提供全部服务就没错。 如前所述,它始终取决于您要实现的目标以及您(或客户)对设置的要求。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.