Garnet:微軟官方基于.NET開源的高性能分布式緩存存儲數(shù)據(jù)庫
當(dāng)前位置:點晴教程→知識管理交流
→『 技術(shù)文檔交流 』
前言前不久Redis宣布從 Redis 7.4 開始,將原先比較寬松的 BSD 源碼使用協(xié)議修改為 RSALv2 和 SSPLv1 協(xié)議,該協(xié)議變化意味著Redis不再開源。今天給大家分享一款完全開源(MIT協(xié)議)、免費的Redis替代性項目產(chǎn)品:Garnet。
![]()
![]() Garnet項目介紹Garnet是一款由微軟研究院基于.NET開源的高性能、跨平臺的分布式緩存存儲數(shù)據(jù)庫,該項目提供強大的性能(吞吐量和延遲)、可擴展性、存儲、恢復(fù)、集群分片、密鑰遷移和復(fù)制功能。并且無需做任何修改可以與現(xiàn)有的 Redis 客戶端配合使用。 ![]() Garnet獨特優(yōu)勢協(xié)議兼容性: Garnet 采用流行的 RESP 線路協(xié)議作為起點,這使得可以從當(dāng)今大多數(shù)編程語言( 性能優(yōu)勢: 相比同類開源緩存存儲,Garnet在處理多客戶端連接和小批量請求時表現(xiàn)更優(yōu),提供更好的吞吐量和可擴展性,從而節(jié)省成本。 低延遲: 在Azure VM上展示了極低的客戶端延遲,通常低于300微秒,對于實際場景至關(guān)重要。 技術(shù)特點: 基于最新的.NET技術(shù),具有跨平臺、可擴展和現(xiàn)代化的特點,易于開發(fā)和維護,并在Linux和Windows上實現(xiàn)了最先進的性能。 ![]() Garnet項目源代碼![]() Garnet性能優(yōu)勢
我們預(yù)配兩個運行 Linux (Ubuntu 20.04) 的 Azure 標(biāo)準(zhǔn) F72s v2 虛擬機(每個虛擬機 72 個 vcpu,144 GiB 內(nèi)存),并啟用加速 TCP。這個SKU的好處是我們保證不會與另一個VM共置,這將優(yōu)化性能。一臺機器運行不同的緩存存儲服務(wù)器,另一臺機器專門用于發(fā)布工作負(fù)載。我們使用名為 Resp.benchmark 的基準(zhǔn)測試工具來生成所有結(jié)果。在撰寫本文時,我們將 Garnet 與最新開源版本的 Redis (v7.2)、KeyDB (v6.3.4) 和 Dragonfly (v6.2.11) 進行了比較。 吞吐量獲取數(shù)據(jù)庫大小為 (a) 1024 個鍵和 (b) 2.56 億個鍵時的吞吐量(對數(shù)尺度)、不同數(shù)量的客戶端會話: ![]() 數(shù)據(jù)庫大小為 (a) 1024 個鍵和 (b) 2.56 億個鍵時的吞吐量(對數(shù)規(guī)模)、不同的批量大小: ![]() 延遲獲取/設(shè)置延遲、不同客戶端會話數(shù)量(a)中值、(b)第 99 個百分位和(c)第 99.9 個百分位: ![]() 不同批量大小下的延遲(a)中值、(b)第 99 個百分位數(shù)和(c)第 99.9 個百分位數(shù): ![]() 項目源碼地址更多項目實用功能和特性歡迎前往項目開源地址查看??,別忘了給項目一個Star支持??。
該文章在 2024/11/6 10:12:28 編輯過 |
關(guān)鍵字查詢
相關(guān)文章
|