File-Sharing

將網站與文件分開?

  • August 7, 2019

我不確定這是否屬於伺服器故障或是否屬於軟體工程,但由於這很可能涉及託管我的網站和相關文件的伺服器端,我相信這裡可能更合適。如果我錯了,請告訴我,以便我們可以將問題遷移到正確的位置。

此外,我不確定哪種標籤最適合我,因為我主要是一名軟體開發人員,這是我的第一次經歷,我沒有一個伺服器團隊來處理這些類型的想法或至少協助他們。


我最近繼承了一個載入了大約 1.8GB 圖像文件的網站。其中大部分很可能不再使用,但我目前沒有時間對它們進行分類並確定哪些可以留下,哪些可以離開。

最重要的是,最近,我收到了一個請求,要為這個已經很大的項目添加大約 105MB 的圖像文件。如果我們目前沒有將所有這些圖像儲存在原始碼管理中,我一點也不介意。

這使得部署、映射、分支和合併非常耗時且乏味,因此我想要一種將基於內容的文件與程式碼文件分離的方法,基本上將項目剝離到它的基本框架(將來)並從中提取文件僅在需要時更新的備用位置,並消除了原始碼控制中的額外佔用空間(以及在我的硬碟驅動器上,因為我目前在我的本地機器上擁有同一個完整項目的 8 個不同分支,用於開發、測試、原型製作等) .


再說一次,我沒有太多時間來解決這個問題,但是有了新的請求,我想阻止自己對這個問題做出貢獻,而是把精力集中在一個可以添加所有內容的長期解決方案上我的新內容會在時間允許的情況下慢慢過渡到其他內容。

到目前為止,我提出的唯一理論是在我的 Web 伺服器上創建一個子域,該子域專門用於保存我可以通過我的主域中的網址提取的內容文件。我不確定這是一個好方法,但我正在考慮的方式可能是。


  1. 什麼是符合最佳實踐的可靠選擇?
  2. 這種類型的分離有哪些潛在的陷阱?

更新

  • 目前鎖定到 TFS 以進行原始碼控制。
  • 想從原始碼管理中刪除圖像。

子域

將所有圖像內容放在子域上會有所幫助。瀏覽器對來自單個域的內容的並發能力有限。從瀏覽器的角度來看,子域被認為是一個單獨的域。所以應該減少下載時間。

託管

另一種可能性是將圖像儲存在圖像託管服務上。這可以節省您的圖像管理,減少站點網路頻寬和載入時間。一些服務具有全球覆蓋 (CDN),因此可以從最近的節點下載媒體內容,從而減少頁面載入時間。

部署

請注意,您的主機可能允許也可能不允許子域存在於您網站的文件根目錄之外。

原始碼控制

在處理過大型源儲存庫和它們存在的問題之後,從儲存庫中刪除所有靜態內容將有很大幫助。這是一個使您的原始碼控制安全面臨風險的負擔。當我們將一個巨大的儲存庫從我們的伺服器遷移到一個非常知名的託管儲存庫服務時,我們不得不失去多年的歷史,因為我們的一個儲存庫規模很大。

引用自:https://serverfault.com/questions/978237