Я изучаю веб-сокеты и хотел создать регистратор веб-сокетов onmessage
, который записывает полученные данные в mongodb.
Я начинаю свой сценарий с
node listner.js
listner.js:
'use strict';
let DBAbstract = require('./db-controller');
const WebSocket = require('ws');
// getting an instance of a mongodb connection
let mongoInstance = new DBAbstract();
const ws = new WebSocket('ws://ws-url');
ws.onopen = function() {
console.log('Open')
};
ws.onmessage = function(d) {
console.log(d.data)
mongoInstance.insertOne(JSON.parse(d.data)) //Promise which add the data
};
ws.onclose = function() {
console.log('Close')
};
ws.onerror = function(e) {
console.log(e.code)
};
Я сделал этот скрипт до сих пор, и он работает.
Когда происходит onmessage
Событие, я получаю небольшой JSON, как этот.
{ "event":2,
"value": 12,
"item": 'Spoon' }
Мне просто интересно, может ли этого быть достаточно с точки зрения масштабируемости полученных onmessage
Событий.
Я имею в виду, что нет проблем, когда я получаю три раза маленький JSON за 10 секунд.
Что произойдет, когда я получу 100 маленьких JSON за 10 секунд?
Где предел получения onmessage
событий в качестве Клиента?
Произойдет ли сбой моего listner.js, потому что я не могу обработать количество событий onmessage
? Или мой mongodb зависнет, потому что он не может обработать количество записей в базу данных
Могу ли я улучшить этот код?