宏虹將提供您所需的任何支援!
專業的宏虹團隊會第一時間回應,為您提供最佳的服務,解決您的一切問題
在多租用戶架構中,單一軟體執行個體可為多個不同的使用者群組(或「租用戶」)提供服務。每個租戶的資料都會被安全隔離,確保其對其他租戶不可見且無法存取。這類似於一棟公寓大樓,每位住戶都在共享建築內的獨立單元中生活,彼此互不干擾。
在Redis 中,多租戶意味著單一伺服器能夠有效管理多個租戶的需求,同時確保每個租戶的資料都安全且獨立儲存。這種方法的主要優點包括營運效率和成本效益。因為它能夠最大化資源利用率,而無需為每個新租戶增加額外的實體基礎設施,從而簡化並提升業務擴展的能力。
使用Redis,你可以在本地部署或任何受控的雲端基礎架構上建立多租戶環境。這項特性對於採用微服務架構的內部應用開發尤其重要。透過多租戶模式,你可以避免為每個開發、測試或生產環境單獨建置和維護基礎設施的複雜性和高成本,使得並行建置和測試更加輕鬆高效,且大幅減少工作量。
RDB(無衝突複製資料庫)是一個跨多個Redis Enterprise 叢集建立的資料庫,這些叢集通常位於全球不同的資料中心。每個參與集群中的資料庫稱為「CRDB 實例」。只要CRDB 資料集的大小適配CRDB 實例的內存,每個CRDB 實例都可以採用不同的配置——它們可以由不同數量的分片組成,並運行在不同數量或類型的叢集節點上。
1. 多實例部署
多租用戶架構和多實例架構有顯著差異。在多實例架構中,每個租用戶都會安裝一個新的軟體實例。下圖展示了Redis 的多實例架構範例。在這種情況下,每個租用戶都會部署一個新的Redis 實例,以滿足資料隔離的需求。然而,隨著租用戶數量的成長,部署、監控、維護和升級多個軟體實例的複雜性也隨之增加。
2. 透過虛擬化/容器化實現多租戶
在這種模式下,Redis 會作為容器或虛擬機器進行部署,由底層管理系統根據需要啟動新的Redis 執行個體。多租戶的管理在伺服器或基礎設施層級完成,確保每個租戶的營運都保持隔離和安全。
這種方法與多實例架構類似,儘管管理階層簡化了Redis 服務的供應和啟動流程,但需要監控和管理的Redis 實例數量並未減少。
許多常見的雲端服務(如Amazon ElastiCache)都採用了這個模式。這些服務的收費方式通常是基於使用的Redis 實例數量。雖然這類服務的可擴展性可以帶來一定的規模效應,但這類優勢往往更有利於服務提供者,而非最終用戶。
3. Redis 的多租戶架構
Redis 提供軟體層面的多租戶能力,在單次部署(通常是節點叢集)中有效支援數百個租戶。每個租戶都會被分配一個獨立的Redis 端點,確保與其他租戶完全隔離。這種方式不僅提高了資源利用率,同時也增強了資料庫的安全性和效能。
在資料中心、私有雲或虛擬私有雲(VPC)中部署Redis,可以充分利用多租戶架構的經濟優勢。透過一個包含少量Redis 節點的集群,就能支援從開發和測試到正式生產的各種需求。這種架構使得企業能夠在同一基礎設施上,高效滿足不同租戶的多樣化需求。
我們的架構透過多個抽象層來實現多租戶、高可用性、線性擴展和高吞吐量等能力。以下是主要元件的解析:
節點(Node)
節點是Redis 軟體運作的基礎硬體單元,可以是實體伺服器、虛擬機器、容器或雲端實例。
資料層(Data Plane)
資料庫(Database):資料庫是租戶資料的邏輯端點,可根據資料規模和吞吐需求分配多個分片。此外,持久化、複製、資料淘汰策略以及透過快閃記憶體擴充RAM 等功能均可在資料庫層級進行設定。資料庫透過在不同節點間分佈主資料庫和副本資料庫來確保高可用性。
資料庫類型
高可用(HA)資料庫:包含一個主分片和一個或多個副本分片。
控制層(Control Plane)
零延遲代理(Zero Latency Proxy):整合於每個節點的多執行緒代理,負責將客戶端的Redis 操作路由到正確的資料庫分片。它確保請求精準地定向至相應的分片,從而保持高效運作。
叢集管理器(Cluster Manager):由一組分散式流程組成,負責整個叢集的生命週期管理。此元件獨立於資料路徑(Data Path)部分,承擔以下關鍵任務:
Redis 提供了豐富的部署能力,唯一的限制是整個叢集的可用記憶體總量。每個資料庫端點都被分配了一個完全限定域名(FQDN),並且所有節點上的零延遲代理(Zero Latency Proxy)會有效地將客戶端請求重定向到正確的主分片(Primary Shard)。
Redis 的多租戶解決方案帶來了顯著的優勢:
無縫擴展:如果需要,Redis 允許你透過增加分片來擴展資料庫,並將其分佈到多個節點上。 Redis 架構確保此過程不會影響其他租戶(即資料庫)。
Redis 作為經過市場驗證的多租戶解決方案,驅動Redis Cloud 的運行,確保所有資料庫既能滿足效能需求,又能避免“鄰噪效應”,並在分散式環境中保持高可用性。目前,Redis 已在AWS、Azure 和Google Cloud 等主要雲端平台上運行超過50,000 個資料庫端點,全球近10,000 家企業信賴Redis 來支援其核心應用。
Redis 採用無共享架構(Shared-Nothing Architecture),將資料路徑元件(如代理程式和分片)與控制和管理元件(如叢集管理進程)徹底分離。這種架構提供了以下優勢,解決了多租戶架構中的關鍵挑戰:
高可用性:即使在分片、重分片和負載平衡過程中,應用程式仍能持續存取資料。 Redis 會自動管理資料可用性,無需人工幹預,確保業務不會中斷。
Redis 的多租戶架構已被眾多企業成功部署,例如:
SaaS 服務商:某SaaS 企業使用Redis 來管理不同客戶的數據,每個客戶都是獨立的租戶,數據完全隔離。這種架構確保資料隱私,同時優化基礎架構成本。
安全性是多租戶環境中的核心問題。 Redis 採用多重安全措施,確保資料隔離,每個租戶的資料對其他租戶完全不可見、無法存取。此外,Redis 還部署了強大的安全機制,如:
定期安全審計,排除潛在漏洞
這些安全措施為企業提供了額外的保障,確保多租戶環境下的資料安全,建立客戶信任。
專業的宏虹團隊會第一時間回應,為您提供最佳的服務,解決您的一切問題
地址:臺灣臺北市中山區敬業一路99號3樓(大灣科技中心大樓)
3rd Floor, Dawan Technology Center Building, No. 99 Jingye 1st Road, Zhongshan District, Taipei City, Taiwan
©2025.hongtronics. All Rights Reserved.