[英]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.