Что является более эффективным с точки зрения скорости и размера (с точки зрения 10-х килобайт)?Отправка объекта JSON через httpRequest или получение данных из mongoDB - PullRequest
0 голосов
/ 15 мая 2019

Я создаю стековое приложение MEAN. У меня есть сомнения относительно эффективности моего приложения.

В настоящее время я хочу загрузить PDF-фактуру объекта. Он находится на внешнем интерфейсе и также хранится в базе данных.

Вот пример объекта:

{"_id":"5cdc3c5a375eeb0b904d6b26","userId":"Vegeta","items":[{"_id":2.5106652231454363,"title":"Eragon","price":40.99,"description":"First Book","imagePath":"<path>","userId":"Vegeta","quantity":2}],"__v":0}

В настоящее время я создаю счет-фактуру, отправляя объект из внешнего интерфейса через httprequest.

const userparams = {
  params: {
    //object
  }
};


this.httpclient.get<{status: number, user: User}>('http://localhost:3000/users', userparams)

Затем я получаю его на сервере, создаю PDF и отправляю его обратно клиенту

router.get('/orders/invoice/:_id', checkAuth, (req, res, next) => {
  const invoiceName = 'Invoice-' + req.user._id + '-' + req.params._id + '.pdf';
  //const invoiceName = 'invoice1.pdf'
  const invoicePath = path.join('backend', 'invoices', invoiceName);

  //The following actually creates a ReadStream
  const pdfDoc = new PDFDocument();
  pdfDoc.pipe(fs.createWriteStream(invoicePath));
  pdfDoc.pipe(res);

  pdfDoc.text('Vegeta Order');
  pdfDoc.end();
}

Однако меня беспокоит проблема масштабируемости. Будет ли лучше, если я получу объект из самой базы данных?

Примечание: - объект не получит больше, чем несколько десятков килобайт

Я знаю, что это, вероятно, очевидно для многих из вас, но я все еще не очень разбираюсь в проблеме http-запросов и том, сколько данных они могут обработать, прежде чем показать проблемы с эффективностью. Поэтому, пожалуйста, помогите мне.

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