當前位置:
首頁 > 最新 > Pivotal Cloud Cache緩存服務,最新「擴展立方體」技術擴展微服務

Pivotal Cloud Cache緩存服務,最新「擴展立方體」技術擴展微服務

導讀

對於基於微服務的現代Web級應用來說,響應大量並發請求的能力是一項制勝因素。這些微服務不僅需要響應來自不同設備、不同接觸點的大規模用戶群請求,還需要響應大幅增長的來自設備、感測器、其他微服務等「非人類」來源的請求。處理如此強度的請求對數據層的應對能力要求極高。如果我們把對速度的需求放在複雜的分布式數據架構背景下,是很難想像如何讓應用應對如此巨大的數據訪問量的。但很幸運,我們有方法做到。

Pivotal Cloud Cache問世

我們很高興宣布正式發布Pivotal Cloud Cache (下文簡稱Cloud Cache),它是一款適用於Pivotal Cloud Foundry的集成式內存中緩存服務。Cloud Cache已經在Pivotal Cloud Foundry Marketplace中推出。

Cloud Cache提供一種內存中鍵值存儲機制,可讓應用和用戶高速訪問數據Cloud Cache專門針對大量並發數據訪問請求,並提供低延遲響應。

Cloud Cache可用來輕鬆調配專用的按需群集。開發人員或管理員可以快速上手,並根據不斷變化的應用和用戶需求調整日常緩存容量。

Cloud Cache按照不同緩存模式以服務套餐的形式提供,即用於緩存模式旁路和內聯緩存模式的獨立專用服務套餐。每種服務套餐(緩存模式)都可以根據需要獨立使用。通過這些服務套餐,Cloud Cache可以提高微服務架構的運行速度,為現代開發實踐提供支持。適用於旁路緩存模式的服務套餐已經發布,而適用於內聯模式以及通過WAN網關的會話狀態緩存和多站點複製的服務模式將於今年內推出。

那麼,在為微服務架構提供性能方面,Cloud Cache表現又如何呢?

使用Pivotal Cloud Cache擴展微服務

「擴展立方體」是一個富有啟發性的方法,可以通過它來了解微服務架構的擴展維度。這一框架最初由AKF Partners提出,描述了微服務沿三個維度擴展的方法。

本圖來自 The New Stack,描繪了微服務擴展立方體。對於 Pivotal Cloud Foundry,X 軸是「通過添加實例擴展」

擴展立方體受到了一些關注,一些主題專家使用這個框架探討微服務架構的可擴展性。緩存是用於擴展微服務的強大技術,可與擴展立方體中描述的三種技術組合使用。本文接下來會主要介紹緩存如何與每種技術組合使用。

Y軸擴展

Y軸擴展與功能分解有關,這是微服務的關鍵特性。微服務架構通過獨立擴展每個微服務,並只針對架構中性能瓶頸的微服務,應用更多的基礎架構資源,讓我們能夠更加精細地擴展架構。

Y軸擴展會形成一套具有不同工作負載類型的微服務。其中,只有一小部分會成為I/O密集型微服務,而這些微服務將會從緩存中獲得最大收益。只需在必要的地方應用Cloud Cache。

X軸擴展

X軸擴展包括運行多個微服務實例,以擴展業務邏輯。通常會讓負載均衡器將流量路由至下一個可用的微服務實例。如果有N個實例,那麼每個實例將處理負載的 1/N。

請注意,X軸擴展是通過添加實例來擴展業務邏輯,沒有規定對數據層進行任何特殊處理。X軸擴展需要跨所有微服務實例的共享數據層,因為每個實例都可訪問所有數據,所以X軸擴展對數據層的性能和可擴展性要求十分苛刻。

Cloud Cache是用來擴展數據層的理想選擇,也可用於添加實例擴展應用邏輯。擴展後備資料庫非常昂貴、費時又有風險,而Cloud Cache的內存中架構和橫向擴展功能可提供大量容量,可滿足多個微服務實例的性能需求。

跨微服務實例的共享數據層避免了每個實例都有獨立緩存層而帶來的複雜性。所有實例的請求都可發送至一個Cloud Cache群集,在此群集中將請求內部路由至相應的伺服器。

那麼,我們如何讓這種共享緩存方法,不與維持微服務間相互隔離的原則產生矛盾呢?開發團隊需要這種隔離以便於自主工作,如果團隊間沒有任何數據存儲或架構依賴關係,就可以更快地完成交付。然而在這種情況下,緩存通過同一個微服務的多個實例共享,而不是跨不同微服務共享緩存。每個實例對數據訪問的要求都相同,因此沒有必要針對數據層做出單獨的自主決策。另外,如果緩存沒有橫跨不同的微服務,也不會橫跨團隊,最好的方法是在負責的團隊內完全分配每個微服務的所有權。因此,跨微服務實例共享緩存無論怎樣都不會違反團隊的自主權。

Z軸擴展

在使用Z軸擴展時,每個伺服器都會運行相同的代碼副本,這與X軸擴展很相似,但主要的區別在於每個伺服器僅負責一個數據子集。Z軸分割法通常用於擴展資料庫,數據根據記錄中的屬性在一組伺服器間分區,然後路由器將每個記錄發送至相應的分區,並在分區中進行索引和存儲操作。

Cloud Cache在這裡特別有用,因為它本身就可分區數據,並在內部感知數據駐留的位置,所以不需要感知數據的外部路由器。站在應用或用戶的角度,Cloud Cache看起來就是一個數據存儲,因為數據分區從外部不可見。此外,Cloud Cache 通過在輔助伺服器上複製數據分區,還可以在內部處理高可用性。這種內置的數據分區功能使Cloud Cache與Z軸擴展完美契合。

3軸組合,性能大增

可以將可擴展性的不同軸結合使用,實現多維組合。例如,可以在創建訂單錄入系統的多個實例來擴展業務邏輯的同時,按照客戶ID分割數據,讓每個實例僅處理一個數據子集。這是一個X-Z擴展的小例子,而當然其他組合也都是可行的。

將每個維度或維度組合與緩存層結合使用,不僅可以獨立增強每個維度的效果,還可以產生額外的複合效果。

緩存具有多功能性,它非常適合提高性能。緩存可以獨立使用,也可以與擴展立方體中的其他技術組合使用。後備存儲不但開銷巨大,而且不夠靈活,所以緩存漸漸成為一種受歡迎的提高性能的方法。在採用緩存的過程中,Cloud Cache能幫助您贏在起跑線。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 Pivotal 的精彩文章:

TAG:Pivotal |

您可能感興趣

微軟收購Citus Data擴展PostgreSQL服務
Hitachi Vantara全面擴展雲託管服務產品
Kotlin 擴展
Google為安全瀏覽服務推專屬Chrome擴展
HyperDrive轉換器 MacBook Pro擴展塢,多功能擴展更專業
微軟發布Windows Defender擴展 為Chrome用戶提供上網安全
社交VR遊戲《Wands》擴展對Mirage Solo和Oculus Go的支持
微軟愛開源:VS Code擴展Web Template Studio
Google Chrome的Windows Timeline擴展重新上架
VMware擴展VMware Cloud on AWS服務 引入RDS資料庫
擴展Zuul實現ignored-patterns的byPass功能
使用Burpsuite擴展Hackvertor繞過WAF並解密XOR
Instagram 擴展購物功能,以及,Prada 推出新款手袋 Sidonie
BlockVC 戰略投資 Celer Network,協助區塊鏈突破可擴展性壁障
微軟宣布將會擴展旗下的訂閱服務Xbox Game Pass
Eur Arch Otorhinolaryngol:單邊耳蝸移植標準擴展研究
MacBook Pro專屬擴展CP,Hpyer更受寵
e 絡盟推出GraspIO Cloudio—一款Raspberry Pi擴展板,配有移動平台,適用於端對端物聯網開發和部署
FacexWorm通過Facebook Messenger和Chrome擴展傳播
Imagination發布PowerVR Series3NX神經網路加速器,為嵌入式人工智慧市場帶來多核可擴展性