Как улучшить websocket 'onmessage' - PullRequest
0 голосов
/ 03 мая 2018

Я изучаю веб-сокеты и хотел создать регистратор веб-сокетов 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 зависнет, потому что он не может обработать количество записей в базу данных

Могу ли я улучшить этот код?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...