本文档介绍使用xlt_api的最佳实践和优化建议。
低延时网卡
系统配置大页
使用Solarflare网卡时,建议配置系统大页(Huge Pages)以提升性能和降低延迟。
查看当前大页配置
查看系统当前的大页配置:
cat /proc/meminfo | grep Huge
输出示例:
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
配置大页
临时配置大页数量(重启后失效):
# 配置1024个大页(每个2MB,共2GB)
sudo sysctl -w vm.nr_hugepages=1024
# 或者直接写入
echo 1024 | sudo tee /proc/sys/vm/nr_hugepages
永久配置大页(修改系统配置文件):
# 编辑 /etc/sysctl.conf 文件,添加:
vm.nr_hugepages=1024
# 使配置生效
sudo sysctl -p
验证配置
验证大页配置是否生效:
cat /proc/meminfo | grep HugePages_Total
# 应输出: HugePages_Total: 1024
注意事项:
- 大页数量根据实际内存和应用需求配置,建议至少512个(1GB)
- 系统需要有足够的连续物理内存来分配大页
- 配置后需要重启应用程序才能使用大页
使用Solarflare网卡
生产环境中,交易及行情对应网卡建议为solarflare网卡,solarflare网卡将自动使用ef_vi,以便达到最优的性能,非solarflare网卡则回退到内核sock模式。
配置示例:
using namespace x1;
"192.168.1.100",
"192.168.2.100",
"192.168.3.100"
);
API配置类 此类用于配置XLT API的各项参数,如日志路径、日志级别、交易日、网卡地址、网关地址、行情接收配置等。 用户需要在调用XLTApi::initialize方法前,创建此类实例,并设置相应...
定义 xlt_api_config.h:49
bool set_local_addr(const char *agw, const char *trade, const char *quote)
设置本地网卡IP地址