Я подключаюсь к веб-сокету 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;
}
}
);