1

我有一個在過去幾天交通爆炸的網站。我正在使用Wordpress和W3 Total Cache插件和Amazon Cloudfront來傳遞站點中的圖像和文件。如何降低Amazon Cloudfront成本?

問題是,Cloudfront的成本相當龐大,僅在過去一週就接近500美元。有沒有辦法降低成本?也許使用另一個CDN服務?

我是新來的CDN,所以我可能不會實現這個好。我創建了一個cloudfront發行版,並在W3 Total Cache Plugin上進行了配置。但是,我沒有使用S3,也不知道我是否應該或如何。說實話,我不太清楚Cloudfront和S3之間的區別。

任何人都可以給我一些提示嗎?

+1

那麼首先......恭喜你。你正在做我們所有人想要處理我們的網站的事情。希望有人會爲你提供建設性的答案。 –

+0

有幾種方法可以降低CloudFront的成本,請您詳細說明您正在查看的數字類型?您是否分析您的CloudFront日誌以找出流量的地理分佈和有效性?這可能會爲您提供有用的見解,幫助您優化基礎架構成本。 – Michael

回答

2

你可以給cloudflare一個去。它不是一個完整的CDN,因此它可能不具備所有的功能,但基本軟件包是免費的,它將減輕服務器上的大量流量。

https://www.cloudflare.com

9

我不太清楚什麼是的Cloudfront和S3之間的差異。

這很簡單。 S3是一個數據存儲。它存儲文件,並且具有超級可擴展性(可輕鬆擴展到一次服務1000人)。問題是它是集中式的(即從世界上的一個地方提供服務)。

CloudFront是CDN。它將您的文件緩存到全世界,以便更快地提供服務。如果你眯起眼睛,它看起來像是在「存儲」你的文件,但是緩存可能在任何時候丟失(或者它們啓動了一個新節點),所以你仍然需要這些文件在你的源頭。

如果每個文件的命中次數太少,CF實際上可能會對您造成傷害。例如,在東京,CF可能有20個節點。在所有20個CF節點緩存文件(請求隨機分佈)之前,可能需要100個文件請求。在這100個請求中,其中20個會觸發一個空的緩存,並在獲取文件時看到另外200毫秒的延遲。他們通常會長時間緩存文件。

我不使用S3,不知道我是否應該

大概不會。如果您期望您的網站在媒體上大規模增長,請考慮使用S3。 (即大量使用照片上傳)。

有沒有辦法降低成本?也許使用另一個CDN服務?

這完全取決於您的網站。一些想法:

1)確保你服務的appropriate headers。並確保您的到期時間不會太短(理想情況下應該是幾天或幾周或幾個月)。

「最佳實踐」是永不過期的頁面,除非您的索引頁面應該每隔X分鐘或幾小時或幾天過期(取決於您希望更新的速度有多快)。確保每個頁面/圖像表示多長時間它可以被緩存。

2)如上所述,只有在每個緩存時間內每個頁面被請求大於100次時,CF纔有用。如果你有幾百萬頁,每個請求幾次,CF可能沒有用。

3)來自亞洲的請求比來自美國的要貴得多。如果您在那裏更受歡迎,請考慮在Toyko啓動您的服務器。

4)看看你的web服務器日誌,看看CF多久請求你的每個資產。如果它比預期的更頻繁,那麼您的緩存標頭設置將會錯誤。如果你設置「緩存這個月」,你應該每天只能看到少量的請求(當他們啓動新服務器等時),以及發佈一個新文件時的幾百個請求(例如,每個CF邊緣節點有一個請求) 。

根據您的設置,其他CDN可能會更便宜。取決於你的服務器,其他設置可能會更便宜。 (也就是說,如果你提供了大量的小文件,你可能會更適合在EC2上進行自己的緩存。)