Andrey 😼
Или тебе именно с ноды нужно?
Reb Michael
та в принципе не обязательно с ноды
Reb Michael
axel под виндой работает?
Victor
Через потоки
да, сделать ограничение в потоков 50-100 и норм
Victor
Download Master? )
можно на fl.ru прогера попросить написать программу недорого
Victor
тогда уж
Victor
хоть мы и в node чате
Konstantin
хоть мы и в node чате
я так понял ему всё равно как скачать
Konstantin
так а какая проблема с миграцией?
Konstantin
не понял твоего "доехать"
Ivan
Делаешь миграцию sequelize migration:create по командам вот линк http://docs.sequelizejs.com/en/v3/docs/migrations/ и потом в самой миграции что то типо такого https://gist.github.com/anonymous/9e0411ee876fe5c9d8243bd5ba6f312e сам недавно в первый раз с таким столкнулся
Ivan
Тебе же 1 колонку добавить к таблице нужно?
Ivan
Вот в том гисте рабочая миграция. Надо было в готовую базу 1 колонку к таблице добавить. Больше ничего не надо писать. Модель там полностью описывать.
Konstantin
либо генерить файлы миграции, что наверное удобнее
Konstantin
миграции имеют свой конфиг + таблицу в бд
Konstantin
блин, это шаблон же
Konstantin
да
Konstantin
я конкретно по seq* не скажу, говорю о механизме миграций
Konstantin
ты имеешь базовую schema и файлы миграции, которые приводят бд к текущей схеме можешь при помощи migrate+seed создать бд , потестить к примеру, откатить... и всё это без CREATE\DROP\ALTER
Zaur
Пытаюсь установить модуль npm i canvas, получаю ошибку: > canvas@1.6.5 install /var/www/path_to/node_modules/canvas > node-gyp rebuild ./util/has_lib.sh: 31: ./util/has_lib.sh: pkg-config: not found gyp: Call to './util/has_lib.sh freetype' returned exit status 0 while in binding.gyp. while trying to load binding.gyp gyp ERR! configure error gyp ERR! stack Error: `gyp` failed with exit code: 1 gyp ERR! stack at ChildProcess.onCpExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:305:16) gyp ERR! stack at emitTwo (events.js:106:13) gyp ERR! stack at ChildProcess.emit (events.js:191:7) gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12) кто знает, как это исправить?
Evgeny
pkg-config: not found
Evgeny
надо чтобы нашелся
Zaur
а где он должен быть? и кто его должен создать? не понимаю :(
Zaur
все заработало, надо было установить пару пакетов
Georgiy
var всемПривет = [Георгий Котов, Автотрейдинг, Делюсь опытом && приношу идеи, быть вкурсе && познакомиться с интересными людьми, SPB, пост Сергея Кокшарова]
Андрей
1с какой то
KlonD90
Русский то это ок. JS на любом можно писать. А вот название переменных с пробелами тоже конечно можно если пробелы какие-нибудь неразрывные
Georgiy
Не совсем удачная идея для представления.
Timur
Накинул http://bysin.net/2017/05/07/no-good-reason-to-use-nodejs/
Timur
TLDR
Timur
Vladimir
> I’d also like to point out that the C++ server (listed as Boost.Asio on the graph) is not using an asynchronous event-based networking model, but a thread-per-connection blocking network model
Vladimir
Boost.Asio ... is not using an asynchronous event-based networking
Vladimir
Да он поехавший походу
Dreamerinnoise
http://bysin.net/assets/nodejs/sync_server.cc
Dreamerinnoise
тут треды
KlonD90
Ну в любом случае графики похожи на мои тесты.
KlonD90
Примерно на 4к запросов в секунду начинается тупняк
KlonD90
Но это скорее претензия к коровому нетворкингу. Где 0 аллокаций как в go?
Vladimir
Где в го 0 аллокаций?
Vladimir
http://bysin.net/assets/nodejs/sync_server.cc
Да, верно. Но тут не хватает http парсера
Vladimir
> Zero memory allocations in hot paths
Vladimir
Ну так это мало о чем говорит
Vladimir
Ну то есть, быстрый и быстрый
KlonD90
Ну то есть, быстрый и быстрый
А там есть сравнение количество алокаций с обычным.
Vladimir
Не, ну это нормальный подход к оптимизации
Vladimir
Но то где 0 - выглядит как лукавство
Vladimir
Все равно нужно аллоцировать объект сокета, реквеста и т д
KlonD90
Ну вот а где в ноде стремящейся к минимуму аллокаций подход. Я так понимаю нужно для одного запроса не пересоздавать объект запроса
KlonD90
А использовать имеющийся ну если все параметры одинаковы
Vladimir
Ну это никто не мешает сделать и посмотреть что будет
Vladimir
Из коробки такое сделать нельзя
KlonD90
Все равно нужно аллоцировать объект сокета, реквеста и т д
Так он видимо преалоцирует достаточно и работает с объектом на уровне байтолюбвт
Vladimir
Ну да, пулить можно
Vladimir
И парсить лениво можно
KlonD90
на уровне tcp? на чем кстати http модуль написан?
Таймураз
Ребят, что за магия? Проверяю массив, массив ли это, а также есть ли у него forEach Array.isArray(arr) && arr.forEach Проходя эту проверку, все равно падает приложение, что forEach не функция WTF?
Таймураз
Падает приложение не при каждом вызове Случаи не сказать, что единичные, но редкие
Denis
Array instance of Array же
A
Ну, я бы для начала развернул условие в полное. Array.isArray(arr) && typeof arr.forEach === 'function'
A
Ты ведь именно это хочешь проверить, а не то что в объекте есть некий .forEach
Smooth Operator
Зачем проверять есть ли у массива метод массива?
Таймураз
Зачем проверять есть ли у массива метод массива?
Потому что до этого он прошел проверку на массив
Таймураз
Ты ведь именно это хочешь проверить, а не то что в объекте есть некий .forEach
Да, согласен Не думаю, что ответит на вопрос, но сейчас выкачу изменения
cloudedbe
Не это ли называется утиной типизацией? Распространенный подход
cloudedbe
Зачем проверять есть ли у массива метод массива?
A
Вообще, думаю стоит вот это еще глянуть: http://web.mit.edu/jwalden/www/isArray.html
Таймураз
Сейчас чекну какой-то из модулей xml parser
Таймураз
xml2js
Таймураз
Тут много где дергаются массивы, но при этом падает он именно в одном месте
A
Я бы попытался поймать этот объект. Возможно это не совсем массив, или какая-то модифицированная версия.
Таймураз
Я бы попытался поймать этот объект. Возможно это не совсем массив, или какая-то модифицированная версия.
Да я тупнул до праздников, только сейчас вспомнил о try/catch Буду теперь ждать, пока баг упадет
Таймураз
parseString
Таймураз
Если один элемент, то модуль возвращает его (объект) Если их много, то возвращает массив. При этом каким-то макаром переменная (в которой находится массив\объект) проходит проверку на массив и проверку на forEach и все равно падает.
Таймураз
Информирую, на всякий