Pie*_*ceT 4 api network-programming amazon-ec2 bitcoin ethereum
我目前正在尝试减少使用 Binance API 调用订单簿时的延迟。
我收到的 ping 约为 7 毫秒,但订单簿调用需要约 200 毫秒才能下载。我使用的虚拟机托管在 Binance 使用的同一个 AWS 场中,并且运行的网络速度约为 800mbps。我不明白为什么当订单簿的大小相对较小时,订单簿调用的接收时间比 ping 服务器所需的时间多出近两个数量级。
任何有关网络或币安施加的限制的帮助或见解将不胜感激。
重要区别:
Ping:前往最近的 CDN 边缘节点,该节点会响应您;你根本无法靠近币安服务器。
API 请求:发送到最近的 CDN 边缘节点,路由到 Binance 服务器,进行处理,然后将响应路由回您。
Binance服务器托管在东京的AWS上。如果您将主机放在那里,延迟将约为 12-15 毫秒(从 Binance 发送响应开始为 2 毫秒)。
为了降低平均延迟,您可以尝试并行发布幂等请求,然后使用最先到达的响应。这很粗鲁,但它完成了工作。
随机说明一下,客户端订单 ID 是可重用的,这使得它们作为使订单幂等的方法毫无用处。(但是,如果您使用固定订单规模,则可以先发制人地锁定所有剩余资金,然后通过订单放置锤击币安,因为您知道重复订单无法成功,因为您没有资金。)
| 归档时间: |
|
| 查看次数: |
16376 次 |
| 最近记录: |