HotKV vs Valkey

為多核心打造的 Valkey 替代方案

Valkey™ 替代方案必須保留協定。HotKV 保留 RESP2 與 RESP3,並以每個核心都在同一份共用儲存上執行指令的引擎,取代單執行緒的指令迴圈。這個 Valkey 替代方案已在同一台機器上對照 Valkey 9.1.2 測量,測試方法與原始資料皆已公開。

快照執行期間的記憶體

Valkey,fork() HotKV,背景執行緒
快照執行中BGSAVE完成時間記憶體用量,越高越差寫入時複製的分頁
示意圖,不是測量結果。Valkey 與 Redis 會為 RDB 快照 fork 出子處理程序,因此快照期間寫入的分頁會被複製。HotKV 由背景執行緒寫入快照。Valkey 9.2 候選版本新增了可選用的免 fork 快照。

這個 Valkey 替代方案以單一執行個體在一台 160 vCPU 的機器上運行,對照 Valkey 9.1.2 時在 12 個指令中的 12 個領先,吞吐量為對方的 8.6x 到 56.6x。HotKV 是針對該 CPU 從原始碼建置。Valkey 9.1.2 則以其原版建置運行。在小型機器上差距較小。

隨插即用

改用這個 Valkey 替代方案,哪些維持不變

HotKV 實作 Redis 線路協定。從 Valkey 搬移通常只需更改主機與認證資訊。核心集合以外的部分請查閱指令參考。

相同的協定

RESP2 與 RESP3,支援 HELLO 協商。HotKV 向用戶端回報 Redis 版本 8.4.0,因此程式庫會據此選擇功能。連線字串、管線、pub/sub 與交易都和現在一樣運作。

相同的用戶端與工具

Redis 與 Valkey 用戶端程式庫、redis-cli、redis-cli --cluster 與 GUI 工具在核心指令上不需更改程式碼即可連到 HotKV。

相同的核心指令

300 個核心指令、Lua 腳本與函式庫,加上您需要時可用的 HotKV 自有指令家族。

您現有的用戶端
$ redis-cli -h <your-hotkv-host> -p 6379 --tls --user app --askpass
> HELLO 3
1# "server" => "hotkv"
2# "version" => "8.4.0"
3# "proto" => (integer) 3
   ... (另外四個欄位)
> SET session:4821 "same protocol, every core"
OK
> GET session:4821
"same protocol, every core"
> TAG.SET session:4821 tenant:acme   # 需要時可用的 HotKV 指令
(integer) 1

選擇 Valkey 替代方案 的理由

團隊為何尋找 Valkey 替代方案

促使團隊尋找 Valkey 替代方案 的 Valkey 文件化特性,於 2026年10月21日 查核。

01

指令在單一執行緒上執行

Valkey 在單一主執行緒上執行指令。它的 I/O 執行緒負責在 socket 上讀取、解析、輪詢與寫入。指令執行仍留在主執行緒上,因此要超越它就得運行更多執行個體或叢集。這正是 Valkey 替代方案發揮價值的地方。

02

AI 工作負載需要額外元件

Valkey 的向量搜尋來自 valkey-search 模組。提示詞快取、語意快取、代理記憶體與 LLM 成本追蹤都不是伺服器的一部分。它們必須另外自建或購買。內建這些功能的 Valkey 替代方案可以省下這些工作。

03

快照會 fork 處理程序

RDB 快照會 fork 出一個子處理程序,因此在寫入負載下執行快照時記憶體會上升。Valkey 9.2 候選版本新增了可選用的免 fork 快照。

04

維運工具在伺服器之外

Prometheus 指標需要 exporter。在 Valkey 9.1 中,熱鍵偵測是 valkey-cli 的用戶端選項。9.2 候選版本新增了伺服器端的 HOTKEYS 指令。

實測,而非宣稱

這個 Valkey 替代方案的實測結果。HotKV vs Valkey 9.1.2,同一台機器

HotKV Ltd 在同一台 160 vCPU 的機器上,以單一執行個體逐一運行 HotKV 與 Valkey 9.1.2。每一個都獲得相同的負載與全部核心。HotKV Ltd 連同測試方法與原始資料公開了每一個數字。

12 共 12 個
HotKV 對照 Valkey 測得最高吞吐量的指令
8.6x 至 56.6x
HotKV 的吞吐量相對於 Valkey 的倍數,涵蓋其領先的 12 個指令(MGET 至 SADD)
無
Valkey 測得較高的指令

HotKV Ltd 針對此 CPU 從原始碼建置 HotKV。Valkey 以其原版正式建置運行。兩者都以單一執行個體運行。執行緒數量依各產品文件中的全核心設定,未針對個別產品調校。在核心數少的機器上差距較小。

SET17.5x
HotKV
50.5M*
Valkey
2.9M
GET22.5x
HotKV
36.6M*
Valkey
1.6M
MGET8.6x
HotKV
4.6M*
Valkey
537K
SETNX29.7x
HotKV
55.3M*
Valkey
1.9M
APPEND19.4x
HotKV
25.1M
Valkey
1.3M
INCR47.3x
HotKV
90.8M
Valkey
1.9M
LPUSH37.5x
HotKV
31.6M
Valkey
842K
RPUSH49.8x
HotKV
43.8M
Valkey
878K
SADD56.6x
HotKV
50.6M*
Valkey
894K
HSET37.1x
HotKV
29.0M*
Valkey
782K
MSET24.3x
HotKV
11.3M
Valkey
465K
PING36.0x
HotKV
125.2M†
Valkey
3.5M

每秒操作數,3 次各 10 秒執行的中位數。每一對長條都以該指令中較快的伺服器為基準按比例繪製。

* 受網路限制: 此結果受執行個體的網路所限,因此伺服器本身的上限更高。

† 受負載產生器限制: 負載產生器機器的 CPU 使用率超過 85%,因此這是它們的上限,而不是伺服器的上限。

Azure D160alds_v7(AMD EPYC 9V45 (Turin),160 個 vCPU),測量於 2026年10月9日。256 位元組的值,管線深度 30,預先填入 5,000,000 個鍵並以均勻隨機方式讀取。三台專用的負載產生器機器。每台伺服器都單獨以單一執行個體運行,並關閉持久化。每一台都獲得全部核心(Redis 為 128 個 I/O 執行緒,即其最大值)。HotKV Ltd 針對此 CPU 從原始碼建置 HotKV,Valkey 則以其原版正式建置運行。 完整測試方法與結果 · 測試工具與原始資料

並列比較

這個 Valkey 替代方案與 Valkey,逐項功能比較

功能HotKVValkey
指令執行多執行緒。每個核心都在同一份共用儲存上讀取、解析並執行指令單一主執行緒。I/O 執行緒在 socket 上讀取、解析、輪詢與寫入
協定RESP2 與 RESP3,支援 HELLO 協商。向用戶端回報 Redis 版本 8.4.0RESP2 與 RESP3
語言C++20,從零打造C
授權商業授權(HotKV Cloud,或地端部署授權)BSD-3-Clause
持久化快照與 AOFRDB 與 AOF
免 fork 快照是。由背景執行緒寫入快照,不 fork 子處理程序9.2 候選版本中可選用
向量相似度搜尋內建(HNSW、VSIM.*),所有方案模組(valkey-search)
LLM 提示詞與語意快取內建(PCACHE.*、SCACHE.*),HotKV Cloud 的 Performance 及以上方案否
AI 代理記憶體內建(AMEM.*),HotKV Cloud 的 Performance 及以上方案否
LLM Token 與成本追蹤內建(LLMBUDGET.*、LLMSTATS.*),HotKV Cloud 的 Performance 及以上方案否
Prometheus 端點內建。設定 metrics-port 後,伺服器會自行提供 /metrics(地端部署)獨立的 exporter
熱鍵偵測伺服器端(HOTKEYS),需自行啟用9.1 為用戶端(valkey-cli --hotkeys)。9.2 候選版本提供伺服器端 HOTKEYS
鍵標籤是(TAG.*)否
奈秒級 TTL是(NEXPIRE、NTTL)否。毫秒級 TTL
伺服器平台Linux(x86_64 與 ARM64)Linux、macOS、BSD
部署方式HotKV Cloud(Google Cloud,42 個區域)或憑授權地端部署自行管理或由雲端供應商託管

持平而論

Valkey 領先這個 Valkey 替代方案之處,或單純不同之處

這個 Valkey 替代方案頁面只有在也說明這部分時才有用。

  • Valkey 以 BSD-3-Clause 授權開源,可免費使用,並由 Linux Foundation 治理。HotKV 是商業的 Valkey 替代方案。
  • Valkey 由多家雲端供應商以託管引擎的形式提供,包括 Amazon ElastiCache 與 Google Cloud Memorystore。HotKV Cloud 在 Google Cloud 上運行,目前為搶先體驗階段。
  • Valkey 可在 Linux、macOS 與 BSD 上運行。HotKV 的伺服器建置僅限 Linux(x86_64 與 ARM64)。
  • 在 PING 上,HotKV 的數值受限於負載產生器,它們的 CPU 使用率達 86%,因此這是一個下限。HotKV 的 GET 用到了輸出網路上限的 100%,同樣是下限。Valkey 在任何指令上都沒有達到這兩個限制。

搬移過來

從 Valkey 到這個 Valkey 替代方案的四個步驟

切換到 Valkey 替代方案在實務上涉及哪些事。

  1. 1

    建立執行個體

    在 HotKV Cloud 主控台選擇區域與方案。該執行個體是一台專屬於您的機器,由我們負責佈建、修補與監控。

  2. 2

    將用戶端指向它

    沿用您現有的用戶端程式庫。把主機、連接埠與認證資訊從 Valkey 改為 HotKV 執行個體。TLS 與密碼驗證從一開始就啟用,並提供 ACL 使用者。使用相同協定的 Valkey 替代方案,在核心指令上不需要改動用戶端。

  3. 3

    搬移資料

    使用您已熟悉的工具。DUMP 與 RESTORE、MIGRATE,或重放您的寫入都可以,因為 HotKV 實作了這些指令。

  4. 4

    啟用原本缺少的功能

    向量搜尋與鍵標籤是所有方案的核心指令。提示詞與語意快取、代理記憶體與 LLM 成本追蹤,在 Performance 及以上方案中是同一台伺服器的指令。不需要模組、sidecar 或第二個服務。這正是 Valkey 替代方案應該加上的。

常見問題

關於這個 Valkey 替代方案的問題

Valkey 用戶端能用於這個 Valkey 替代方案嗎?

可以。Valkey 用戶端使用 RESP2 與 RESP3,這正是 HotKV 所實作的。valkey-cli、叢集感知用戶端與 GUI 工具在核心指令上不需更改程式碼即可連線。

在基準測試中 HotKV 與 Valkey 相比如何?

在一台擁有 160 個 vCPU 的 Azure D160alds_v7 上,以單一執行個體運行,HotKV 對照 Valkey 9.1.2 在全部 12 個指令上都記錄到最高的中位數吞吐量。倍數從 MGET 的至少 9 倍到 SADD 的至少 57 倍。兩者都獲得全部核心。Valkey 的核心用於 I/O 執行緒,因為它在單一執行緒上執行指令。

Valkey 是免費的。為什麼要為 Valkey 替代方案付費?

您付費購買的是引擎及隨之而來的功能。所有方案都有多執行緒執行、向量搜尋、鍵標籤與奈秒級 TTL。Performance 方案起有 AI 快取與代理記憶體。在 HotKV Cloud 上,每個執行個體都是一台專屬機器。如果單執行緒的免費伺服器能滿足您的負載,Valkey 是個好選擇。

我可以在自己的雲端帳戶中運行 HotKV 嗎?

可以。HotKV On-Premise 讓這個 Valkey 替代方案憑授權在您自己的伺服器或自己的雲端帳戶中運行,包括實體隔離網路。

用您現有的用戶端來測試這個 Valkey 替代方案

HotKV Cloud 正分批開放。這個 Valkey 替代方案 的每個執行個體都是搭載多執行緒引擎的專屬機器。AI 指令家族隨 Performance 與 Scale 方案提供。