我有一個共享託管計劃,並正在設計一個包含幻燈片的單頁網站。瀏覽器通常會限制同時向單個域請求的數量。我不希望有很多流量,但我希望我收到的流量能夠快速加載。我可能會添加無限的子域名,但這是否真的影響客戶的速度,因爲他們可能是唯一一個輪詢我的服務器,並且所有子域指向同一個處理器?我已經爲每個圖像創建了兩個版本,一個用於幻燈片放映,另一個用於通過AJAX請求提供更大的格式,但延遲時間對我的口味而言仍然有點長。有什麼建議麼?從共享託管計劃處理大量圖像的最佳方式是什麼?
2
A
回答
3
在您設計一堆子域以最大化並行連接之前,您應該對您的頁面加載行爲進行概要分析,以便知道大部分時間都用在哪裏。首先做出更容易和更有價值的優化。
有幾個工具可以幫助這一點,使用所有這些:
- https://developers.google.com/speed/pagespeed/
- http://developer.yahoo.com/yslow/
- http://www.webpagetest.org/
一些重要的因素看都是高速緩存優化和圖像壓縮。
如果您已經完成了所有這些工作,並且您確定要使用多個(子)域,那麼我會建議使用內容交付網絡(CDN)而不是託管靜態文件(圖像)相同的共享服務器。你可能會考慮Amazon's CloudFront service。這是非常容易建立,並且價格合理。
最後,不要被太多(子)域帶走,因爲每個主機名都需要單獨的DNS查找;找到一個平衡點。
相關問題
- 1. 在C#中處理共享dll的最佳方式是什麼?
- 2. 在戰略模式中,處理共享行爲的最佳方式是什麼?
- 3. 什麼是學習數字圖像處理的最佳方式?
- 4. 在clojure中處理圖像的最佳方式是什麼?
- 5. 處理變更管理的最佳方式是什麼?
- 6. 什麼是大量圖像編目的最佳方式?
- 7. 處理Flash庫的大量圖像的最佳方式?
- 8. 什麼是處理回收視圖上的大量數據的最佳方式
- 9. 處理同步變量的最佳設計模式是什麼?
- 10. 管理會話變量的最佳方式是什麼?
- 11. 管理Javascript內存中變量的最佳方式是什麼
- 12. 處理大型數據表的最佳方式是什麼?
- 13. 處理動態圖像縮略圖大小的最佳方法是什麼?
- 14. 處理破損圖像的最佳方法是什麼?
- 15. 什麼是寫/管理CouchDB視圖的最佳方式?
- 16. 什麼是管理圖片的最佳方式WP 8.1
- 17. 共享/分發Excel宏的最佳方式是什麼?
- 18. 跨項目共享MasterPages的最佳方式是什麼
- 19. 什麼是處理像'thread_views'這樣的大表的最佳方式?
- 20. 共享類實例(創建和共享單例)的最佳方式是什麼?
- 21. 在MS SQL Server中管理大量表的最佳方式是什麼?
- 22. 將WCF和ASP.NET一起託管的最佳方式是什麼?
- 23. 託管JavaScript庫的最佳方式是什麼?
- 24. 處理iPad/iPhone視圖的最佳方式是什麼?
- 25. 從Net :: HTTP處理異常的最佳方式是什麼?
- 26. 什麼是動態調整圖像大小的最佳方式?
- 27. 什麼是在MFC中制定計劃的最佳方式
- 28. 在python(100 k行)中處理大量輸入的最佳方式是什麼?
- 29. PHPexcel出口什麼是處理大量出口的最佳方式
- 30. 在儀表板中處理大量數據的最佳方式是什麼?
我已經授予您賞金。你提供的答案雖然是唯一的,但是相當完整,爲此我感謝你。我確實有我的問題的一部分,我可能沒有問好。我的直覺是否正確:共享計劃上的多個子域不會顯着提高速度,因爲它們都查詢相同的服務器/處理器,並且服務器的映像服務時間大於請求的典型延遲時間?這就是說,我認爲你的CDN評論是我正在尋找的答案。 – buck54321
這取決於硬件和軟件,但現代服務器能夠並行處理多個請求。因此,您不一定會遇到一次一次請求瓶頸。例如,常見的配置是在prefork模式下運行的Apache HTTPD,它爲每個請求分配不同的進程。如果有多個核心,每個進程可以並行運行。但是當然可能會有磁盤I/O等瓶頸。真的,每個場景都不同,但實際上可以從單個服務器獲得卓越的吞吐量。無論如何,CDN是一個好主意。 –
關於您從單個頁面提供多個圖像的問題。關鍵的瓶頸可能是瀏覽器的每個主機的連接數限制。因此,即使子域是從同一臺服務器提供的,您實際上可能會看到使用多個子域的重大改進。通過查看資源加載瀑布圖(如我鏈接的工具生成的瀑布圖),可以更容易地進行可視化。 –