幾個月前,WordSesh 組織者聯繫我們,詢問我們是否願意主辦他們的線上會議。不用說,我們非常高興能夠幫助舉辦這場偉大的 WordPress 活動。從技術角度來看,該專案也非常有趣,因為我們需要確保數千名訪客能夠 24 小時觀看免費直播,而不會出現任何停機或其他技術問題。
什麼是WordSesh?
WordSesh 是一個 24 小時免費線上會議,聚集了來自世界各地所有最好的 WordPress 演講者,巴西電話號碼數據 參加一場免費的不間斷會議馬拉松。今年是該會議的第三屆,預計將是迄今為止規模最大的一次。
這意味著在活動舉行的 24 小時內,網站將經歷巨大且難以預測的流量激增。當然,至關重要的是,在此時間範圍內的任何流量成長都能無縫處理,因為即使是最短的停機時間也可能意味著活動的嚴重失敗。例如,在全年流量穩定的正常網站上,10 分鐘的停機時間可能不會被注意到,但您可以想像,如果停機時間發生在活動訪問量最大的時段,即使是10 分鐘的停機時間也可能會造成多大的損害。
我們選擇 Linux 容器是為了實現無限的可擴展性
由於我們不想在使用 WordSesh 時冒任何停機的風險,因此我們選擇了一種我們喜歡的託管技術,因為它幾乎可以無限地在不停機的情況下進行動態擴展,即 Linux 容器。使用容器讓我們高枕無憂,無論發生什麼,我們都能夠為我們為 WordSesh 建造的基礎設施的每個部分添加更多垂直和水平資源。我們隨時都有值班人員準備好添加更多資源或應對任何其他潛在問題。
我們從一開始就建立了冗餘基礎設施
基本上,我們有兩個負載平衡容器、兩個 PHP FPM 容器和兩個 MySQL 容器來處理活動期間的所有流量。
運行 NGINX 的兩個負載平衡容器被設定為將傳入連接分發到它們後面的其他容器。由於這些配置為水平擴展,因此如果檢測到高負載,我們能夠在幾秒鐘內添加新的負載平衡器。它們僅針對靜態資源啟用了一些緩存,並配置為與 Cloudflare CDN 服務配合使用。
在負載平衡器之後,我們連接了兩個啟用了操作碼快取並執行 Memcached 服務的 PHP FPM 容器。這對於網站主頁上顯示的數百名訪客的頭像特別有幫助。顯示所有這些頭像會導致對資料庫進行大量查詢,
我們添加了最先進的動態緩存
最後,我們希望啟用動態緩存,以便在需要添加新硬體之前能夠處理到網站的最大並發連線數。您可能知道,8fig 回顧:現代企業的電子商務融資 實現動態快取系統時的主要挑戰是在網站發生變更時清除快取。雖然,作為SuperCacher 的一部分,主辦 WordSesh 2014 – 接 我們開發了一個非常有效的WordPress 外掛程式來應對這一挑戰,但它是為駐留在單一伺服器上的普通網站開發的,無法在具有多個MySQL 的高度複雜的基礎設施中有效地清除快取PHP 容器。
這就是為什麼,我們使用了一種稱為過時快取的技術,台灣數據 透過與 PHP 容器的單一連接每 10 秒重新產生快取內容。這意味著我們基本上一直在向 WordSesh 訪客提供快取內容,但該快取最多存在 10 秒。這非常有效,貨櫃可以輕鬆處理所有的流量。