系統需求¶
參考機器規格¶
| 項目 | 規格 |
|---|---|
| CPU | Intel Xeon E-2388G / E-2488(8 cores,高時脈) |
| NIC | Xilinx/Solarflare X2522 25G (sfc driver) 或 AMD Alveo X3522 25G (xilinx_efct driver) |
| Onload | 9.1.1.66 |
| OS | RHEL 9(kernel 5.14.0) |
硬體最低需求¶
- CPU:≥ 4 physical cores,x86-64 架構,具備 AVX2 指令集。建議於 BIOS 停用多餘核心、僅保留 4 顆 active,讓剩下的核心取得較高的 turbo bin。其中 1 顆會被隔離作為 NetThread 專用運算核心,其餘 3 顆供 OS、CalcThread 與其他 helper threads 共用。建議選用高時脈 CPU(如 Intel Xeon E-2388G、E-2488 或同等級產品),不限廠牌。建議使用 single socket 伺服器;dual socket 因 NUMA 配置較複雜,不推薦。
- NIC:依所選版本而定,見下表。
- Memory:≥ 16 GB,建議 32 GB
- 磁碟:SSD/NVMe,至少預留 200 GB 給 daily log
BIOS 設定¶
安裝 OS 前請先進入 BIOS 完成以下設定:
| 項目 | 設定值 |
|---|---|
| Power / Performance Mode | Max Performance |
| Hyper-Threading (HT) | 關閉 |
| VT-d (Intel Virtualization for Directed I/O) | 關閉 |
| Active core count | 4(停用多餘核心,衝高剩餘核心 turbo bin) |
| 版本 | 說明 | 支援 NIC |
|---|---|---|
| [通用版] | 標準 kernel network stack | 任意 10G/25G 網路卡,例如 Solarflare X2522、Mellanox ConnectX-5、Intel 10G/25G 系列 |
| [高速版] | Solarflare user-space network stack,bypass kernel | 限 Solarflare X2522 及其後續衍生型號 |
OS 需求¶
- 發行版:RHEL 9(或 CentOS Stream 9 / Rocky Linux 9 / AlmaLinux 9)
- Kernel:5.14.0 系列(RHEL 9 預設)
- 必要:支援
isolcpus=managed_irq(kernel 4.17+)
- 必要:支援
- C++ runtime:GCC 11.5+(RHEL 9 預設)
套件依賴¶
封閉網段請事先準備離線套件
交易主機部署在封閉 LAN,安裝期間沒有網際網路,無法即時 dnf install 拉相依。
上述套件(特別是 lftp — RHEL/Rocky 9 base 不含)必須在進機房前準備好離線安裝介質:
- 自建 yum mirror,或
- 預先把對應 .rpm + 相依 download 下來(dnf download --resolve <pkg>)放 USB 帶進機器後 dnf localinstall。
tapioctl ship --proto sftp(tapioctl archive 後將 tarball 上傳給 broker)執行期間呼叫 lftp;缺套件會 fail fast,但封閉環境發現太晚就太晚了。
[高速版] 限定
Onload / TCPDirect 僅 [高速版] 需要安裝,[通用版] 可略過。從 source 安裝,不在系統 repo 內 — 詳見 Onload / TCPDirect。
部署 user¶
每個 broker 部署用獨立 OS user 執行 Tapio(user 名稱由各 broker 部署自行約定)。
post_install 會把 /opt/Tapio/ 底下的檔案 chown 到這個 user。
User 必須在裝 RPM 之前先建立,例如:
網路規劃¶
| 用途 | 方向 | 協定 | 說明 |
|---|---|---|---|
| 客戶下單 | 投資人 → Tapio | TCP/IP 自訂電文 | port 可於設定檔調整 |
| 交易所連線 | Tapio → 期交所 | TCP/IP TMP 電文 | |
| 行情接收 | 四合一線路 → tapio-quote-receiver | UDP multicast | IP 由 broker 自行規劃設定 |
| 管理介面 | GUI client → Tapio | gRPC | port 可於設定檔調整 |
各網段僅需在封閉 LAN 環境下可達,不需對外開放。
[高速版] 網路卡規劃
[高速版] 需將客戶下單與交易所連線分別接在同一張 Solarflare NIC 的兩個 port 上。