Алексей
а сам контейнер уже как демон
Алексей
в одном контейнере express
Алексей
в другом воркер
Алексей
оба как демоны запускаются
Anton
ну вот я и говорю отдельный контейнер для воркера
Anton
ну да
Алексей
советую docker-compose для разруливания вот этого вот всего
Алексей
и ещё какой-нибудь контейнер с редисом
Alessandro
а кто-нибудь сравнивал, что лучше, поднимать воркеры на уравне кластера в ноде, или на уровне докера?
Алексей
вангую что на уровне докера
Алексей
обычно в контейнер стараются запихать только один процесс
Anton
Алексей
кстати
Алексей
пользуясь случаем спрошу
Алексей
есть какой-нибудь пакет для очередей, но на промисах?
Anonymous
Алексей
хочу чтобы было примерно так:
while (true) {
const item = await queue.get();
...
}
сomorsiс
а не проще сразу колбек повесить?
Алексей
ну не знаю
Alessandro
я вот нагуглил https://www.npmjs.com/package/bull-queue-manager
Alessandro
но ничего про это не скажу
Oleg
Мне привидилось или тут в чате есть автор telegraf.js ?
Если да, то есть вопрос.
Stage из последней версии и telegraf-session-redis должны дружить? Когда пишу просто в сtx.scene.state — все прям здорово. Когда записываю туда значение из асинхронного чего-либо
...then(()=> сtx.scene.state.foo = bar) — привет сове: значение до редиса не доходит, ну и по отладке видно что saveSession вызывается до первого асинхроного вызова, и несохраненное значение умирает, как только заканчивается цепочка асинхронных миддварей.
Не могу понять как это побороть: убил уже уйму часов. код показывать врядли есть смысл – там зоровенные портянки. Поэтому вполне устроют варианты ответа типа: "ты дебил, все должно работать", "все так и есть это баг/фича" и "а хз"
Благодарю.
Алексей
Anton
Еще один глупый вопрос, если можно. Делаю я очередь на kue вешаю свой обработчик через
queue.process
И скажем в этом обработчке происходит долгая трудная операция секунд на 10 и я ее не разбиваю на мелкие.
Экспресс же в это время не будет принимать http запросы?
Матрос
ребят, объясните мне дураку, что в контесте всяких там bull/kue/bee и иже с ними значит stalled?
Матрос
о, а вы тут как раз про них
Nurik
Anton
kue будет это делать в отдельном процессе-воркере. Количество воркеров определяется параметром.
Сделал следующее: в обработчике делаю while(true) 5 секунд. Т.е. блокирующую операцию.
Эту задачу добавляю из хэндлера экспресса и сразу возвращаю ответ юзеру.
q.create('test', {foo: 'bar'}).save()
response.send(new Date());
В итоге первый запрос отдается моментально: таск добавился, ответ отдался.
Но теперь таск начал выполняться, а в нем блокирующая операция.
В итоге второй запрос к экспрессу не обрабатывается пока не выполнится мой таск.
Anton
значит надо запускать обработчик тасков в другом контейнере. Верно?
Nurik
Anton
Nurik
почитайте там в доке, там все это написано.
Anton
Алексей
Привет, парни. Возник такой вопрос, можно ли делать express middleware с припиской async (es7)
Cenator 🐈
Cenator 🐈
Если есть возможность, бери коа
Алексей
zamir
привет, ребят, есть сайт на nodejs, в один день он упал) в логах глянул , жаловался что Error: Cannot find module 'iconv-lite', но такого модуля я не использвал, понял что этот модуль идет как зависимость, установил и норм, но вопрос в том что как он мог взять и исчезнуть) сталкивался кто-нибудь с этим?
Dika
zamir
это удалит папку и установит модули снова? ок попробую, спасиб
Dika
Eugene
Ребята, кто нибудь уже использовал https://ef.js.org/#!home ? Как ощущения?
Дима
Eugene
Eugene
Мешают код?
Дима
Хз, ну просто какие сейчас шаблоны в 2017)
Дима
Даж цсс то уже в виде кода
Eugene
Дима
Eugene
Дима
Ага
Дима
Вообще кстати там что-то особо не видно коммитов
Alexander
привет всем. кто каким генератором pdf из html шаблона пользуется?
Pavel
Привет я Павел :)
Николаич
А я томат :)
енот
а я енот
Таймураз
А я админ
Хорош уже
(Типа злодей)
сomorsiс
Cenator 🐈
Nikita
Alexander
Попробуй хром
мне изпод nodejs надо генерить. или ты о чем?
сomorsiс
скорее всего про phantomJs
Cenator 🐈
Alexander
Nikita
Но сегодня я бы вполне вероятно взял всё-таки безголовый хром.
Nikita
На нпм даже есть готовые пакеты для этого.
Anonymous
пацаны, а почему в ноде одни require? вроде 8 версия уже может работать без бабеля?
Anonymous
там вроде поддержка асинка даже есть
Anonymous
http://node.green/
Oleg
Anonymous
херово
Anton
Anonymous
foobar.js:
module.exports.foo = 1;
module.exports.bar = 2;
index.js:
const {foo, bar} = require('foobar');
Anonymous
это должно норм работать?
Михаил Макарычев