Size: a a a

Node.js — русскоговорящее сообщество

2020 September 08

T

Taras in Node.js — русскоговорящее сообщество
Андрей Беляев
Но зачем? Я-то наоборот хочу с минификацией.
Чтобы посмотеть что оно генерить
источник

T

Taras in Node.js — русскоговорящее сообщество
Почитай аргументы. Иожно уменьшить указав что запускать только на ноде
источник

АБ

Андрей Беляев... in Node.js — русскоговорящее сообщество
Taras
Почитай аргументы. Иожно уменьшить указав что запускать только на ноде
Как раз сейчас занят этим
источник

АП

Алексей Попов... in Node.js — русскоговорящее сообщество
Dmitry Croft
Рассматривается и такой вариант

Моя проблема заключается в целом в том, что как только нужно работать с большими объемами данных, то бизнес логика переползает в базу данных.

И я ищу какое-то логическое решение это проблемы, чтобы бизнес логика была четко отделена от слоя данных. Но получается что такого не получится сделать не потеряв в производительности?
Каждый слой абстракции даёт оверхед, чудес не бывает. И иногда оптимизация сводится к убиранию этих слоёв
Но я не думаю, что размещение логики в бд это обязательно размыв границ между слоями и протекание абстракций. Вообще не вижу зла в размещении бд в базе (если база даёт нормальные инструменты, конечно, как mssql, к примеру)
источник

М

Максим in Node.js — русскоговорящее сообщество
Андрей Беляев
Я тут начал разбираться с WebAssembly и Emscripten. В качестве эксперимента решил скомпилировать простенькую функцию генератор псевдослучайных чисел:

#include <stdint.h>

uint8_t rand(void) {
 static uint8_t rand = 0;
 rand = rand * 109 + 89;
 return rand;
}

Команда компиляции выглядит так (не пугайтесь символа ^ - он используется в Windows, чтобы разбивать команду на несколько строк):

emcc wasm-module.c -Os -flto ^
-o wasm-module.js ^
-s MODULARIZE ^
-s EXPORTED_FUNCTIONS="['_rand']" ^
-s EXPORTED_RUNTIME_METHODS="['ccall', 'cwrap']"

В итоге на выходе я получил достаточно маленький файл .wasm (156 байт). Таким маленьким он получился после того, как я добавил опцию компилятора -Os. С -O2 к примеру размер файла чо-то огромный выходит.

Кроме того создаётся .js файл, который нужно инклудить внутри своего скрипта под node.js. И всё работает:

"use strict";

const wasmModuleFactory = require("./wasm-module");

(async () => {
 
 const instance = await wasmModuleFactory();
 
 console.log(instance._rand());
 console.log(instance._rand());
 console.log(instance._rand());
 
})().catch(error => console.log(error));

Выводит в консоль:

89
62
191

Вот только что меня с ходу смутило. Почему сгенерированный JS файл, который я инклужу в node.js такого огромного размера? 15 килобайт в минифицированном виде. Что такого он там делает? Я думал, имея скомпилированный WASM бинарник, можно относительно без проблем парой строк кода запустить этот код хоть в node.js, хоть в Google Chrome. А тут оказывается, что ещё какой-то огромный автосгенерированный JS фреймворк нужно инклудить. Как можете увидеть, никаких зависимостей моя программа на Си не требует. Так в чём же дело?
Я пробовал васм в браузере, там три строчки жс кода нужно для подключения.
Видимо твоя проблема связана с емкриптеном.зачем он вообще тебе?
источник

АБ

Андрей Беляев... in Node.js — русскоговорящее сообщество
Максим
Я пробовал васм в браузере, там три строчки жс кода нужно для подключения.
Видимо твоя проблема связана с емкриптеном.зачем он вообще тебе?
Я уже разобрался
источник

A

Aleksandr in Node.js — русскоговорящее сообщество
На  локалхосте 3000 стоит сервак с вебсокетами. Если я с 3030 порта пытаюсь к нему подключится то все хорошо, но если на фронте добавить
const socket = io('http://localhost:3000',{
 transportOptions: {
   polling: {
     extraHeaders: {
       'auth-token': 'test'
     }
   }
 }
});
источник

A

Aleksandr in Node.js — русскоговорящее сообщество
В чем дело может быть?
источник

a

arts in Node.js — русскоговорящее сообщество
Там же написано
источник

A

Aleksandr in Node.js — русскоговорящее сообщество
У меня стоит app.use(cors());
и все что было в гугле я уже попробывал
источник

Д

Денис in Node.js — русскоговорящее сообщество
Ну вчера же уже писал - CORS
источник

Д

Денис in Node.js — русскоговорящее сообщество
даже статейку скидывал
источник

BB

Bruian Blake in Node.js — русскоговорящее сообщество
Да что ты статейками кидаешься, просто дай готовое решение, сделай за человека
источник

Д

Денис in Node.js — русскоговорящее сообщество
и действительно🤔
источник

Д

Денис in Node.js — русскоговорящее сообщество
Aleksandr
В чем дело может быть?
ты выложи хоть на гит хаб какой-нибудь, склонирую, подебажу, внесу правки
источник

Д

Денис in Node.js — русскоговорящее сообщество
я еще и тестами покрою
источник

Д

Денис in Node.js — русскоговорящее сообщество
еще и скрипт для деплоя и запуска тестов сделаю, а чо нет то
источник

BB

Bruian Blake in Node.js — русскоговорящее сообщество
Другой разговор. Только инвойс не забудьте выставить, сколько там у вас час работы стоит?
источник

Д

Денис in Node.js — русскоговорящее сообщество
ох, может $30?
источник

Д

Денис in Node.js — русскоговорящее сообщество
ну по брацки скидку сделаю
источник