Nodejs мультипотоков Mysql Insert - PullRequest
0 голосов
/ 24 октября 2018

Я подключаюсь к веб-сокету API, который обновляет время в реальном времени.У меня есть несколько потоков, которые я пытался передать, когда есть обновление и вставить данные в базу данных.

Когда я делаю это на 1 потоке, он работает нормально, но когда у меня есть 20 потоков и каждый из нихсодержит вставки SQL, вещи начинают отставать.

Мне интересно, как я могу сделать это более эффективным и быстрым?

Мой код основан на пакете "binance" и выглядит примерно так:

binanceWS.onCombinedStream([
    streams.depth('BNBBTC'),
    streams.kline('BNBBTC', '5m'),
    streams.trade('BNBBTC'),
    streams.ticker('BNBBTC')
],
(streamEvent) => {
    switch(streamEvent.stream) {
        case streams.depth('BNBBTC'):
            console.log('Depth event, update order book\n', streamEvent.data);
insert....;
            break;
        case streams.kline('BNBBTC', '5m'):
            console.log('Kline event, update 5m candle display\n', streamEvent.data);
insert....;
            break;
        case streams.trade('BNBBTC'):
            console.log('Trade event, update trade history\n', streamEvent.data);
insert....;
            break;
        case streams.ticker('BNBBTC'):
            console.log('Ticker event, update market stats\n', streamEvent.data);
insert....;
            break;
    }
}
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...