qdzzyb
V2EX  ›  问与答

不懂就问 交易所的 k 线是怎么做到实时?

  •  
  •   qdzzyb · Nov 27, 2020 · 5005 views
    This topic created in 2170 days ago, the information mentioned may be changed or developed.

    现在有个类似 k 线的需求 有点不知道从何下手 数据都在 mysql

    Supplement 1  ·  Nov 27, 2020
    目前 mysql 里的是交易数据

    后台会有定时任务计算 k 线数据

    最新一根 k 线 是不是可以根据当前的时间戳来算,前端轮询就可以了?

    15 分钟举例 当前 15 分钟的 k 线实时计算,之前的数据直接读数据库的记录就可以了
    Supplement 2  ·  Nov 27, 2020
    另外交易数据是从一个队列消费来的
    14 replies  •  2020-11-28 13:12:38 +08:00
    libasten
    libasten
    Nov 27, 2020
    1
    监听数据写入 mysql 的事件?触发了就绘制一下线图?
    VVVV7
    VVVV7
    Nov 27, 2020
    2
    websockect 长连接能做到 服务端主动推送到网页上
    toma77
    toma77
    Nov 27, 2020
    3
    websocket
    checkzhzzzzz
    checkzhzzzzz
    Nov 27, 2020
    4
    redis+websocket
    newbieRenew
    newbieRenew
    Nov 27, 2020 via iPhone
    5
    可以用 Server-Sent Events
    keenkiller
    keenkiller
    Nov 27, 2020
    6
    binlog 解析,然后长连接推送
    hronro
    hronro
    Nov 27, 2020
    7
    你应该把你的需求具体描述出来,比如你希望知道是前端部分何如实现还是后端部分如何实现?
    还有你的数据量有多大,数据库查询需要花多久?

    如果数据量很小的话,很好实现,直接前端每隔 1s 轮询一次接口就行了。
    如果数据量很大,每次查询数据库需要花费几十秒甚至更多的话,那就要上一套更复杂的方案了。
    qdzzyb
    qdzzyb
    OP
    Nov 27, 2020
    8
    @hronro 感谢 我应该说详细一点的
    hehe12980
    hehe12980
    Nov 27, 2020
    9
    正常的交易所都是 前端用 node.js 对接 redis 采用消息订阅模式 再加 websocket 如果直接后台 推的话 数据量大 占用带宽
    shm7
    shm7
    Nov 27, 2020 via iPhone
    10
    是一个离散统计表示
    hellsnow
    hellsnow
    Nov 27, 2020
    11
    sse
    jones2000
    jones2000
    Nov 27, 2020
    12
    tcp 或 ws 长连接订阅推送, 数据存内存,1 台机器有压力, 就由主数据服务器推送到 2 级数据服务器,由 2 级数据服务器推送给客户端。 用户多了,多部署几台 2 级数据服务器就可以, 一般实时行情系统不从 mysql 或 redis 里面取,慢慢慢。
    black11black
    black11black
    Nov 28, 2020
    13
    @libasten 差太远了兄弟,关系型数据库首先顶不住这种压力,还加事务更顶不住了。。大券商每天 9 点半 QPS 可能两三百万,mysql+事务估计能同时负载 20-30 人?
    nl101531
    nl101531
    Nov 28, 2020 via iPhone
    14
    这种都时序数据库,背后有实时降采样聚合,数据算的很快。前端和后端就 ws 实时推送
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2783 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 65ms · UTC 10:40 · PVG 18:40 · LAX 02:40 · JFK 05:40
    ♥ Do have faith in what you're doing.