Yurii
Alexander
Георгий
Kool
Как ловить дисконнекты монги? Добавил обработчик в mongoose.connect, но при закрытии монго-сервера, ошибок никаких в приложение не прилетает и валится только при запросе
Kool
server instance pool was destroyed
с такой ошибкой валится
Kool
keepAlive стоит
Kool
mongoose те же ошибки эммитит?
yopp
ничего не могу сказать про реализацию в js. SDAM является стандартным для mongo механизмом мониторинга изменений в топологии
Kool
навесил эти ивенты на mongoose.connection - 0 реакции
yopp
ищите в недрах mongoose. судя по документации там есть только высокоуровневые события connected/reconnected/disconnected
yopp
если они вас не устраивают то вам надо найти способ как подписаться на собтытия от sdam
Bro
а можно как-то сделать
Bro
в аггрегации
Bro
чтобы убрать элементы которые есть уже в другой коллекции?
KDM
Коллеги, здравствуйте!
Подскажите, пожалуйста, правильно ли я понимаю, что данное выражение:
if users_db.find_one({'$and' : [{'chat_id': message.chat.id}, {'fraction': {'$in':['Люди','Орки']}}]}):
расшифровывается как - если находишь поле chat_id с такими-то айди И поле fraction со значением Люди ИЛИ Орки - выполнить действие такое-то?
Dmitriy
Если найдена запись в бд соответствующая условию чатид такой-то и фракция люди или орки, то сделать что-то
KDM
Nick
Bro
есть коллекция-очередь и коллекция с данным полученными после обработки очереди. есть процессы которые пишут постоянно в коллекцию очередь и процесс который извлекает элементы и обрабатывает порциями по 1000 штук
Bro
думаю аггрегацию может сделать чтобы выборку сделать из коллекции очереди 1000 элементов которых еще нет в другой коллекции
Bro
KDM
Dmitriy
ребят, ткните плз носом куда читать по аф, нужна агрегация одним запросом по разным условиям, если конечно такое возможно?
Max
Привет, есть агрегация которая возвращает статистику по коллекции следующего вида:
Max
Max
всё хорошо - но есть проблема - пропуски в датах. то есть если нету данных за 23 число - то записи не будет. Есть ли способ как-то это решить? то есть я хочу чтобы были дефолтные значения с count = 0 а идей как это сделать нету
Dmitriy
Nick
Nick
эм, как один проход по данным может блокировать код?
Nick
блокируют всякие синхронизации, операции с внешним миром, но никак не обычный процессинг ответа
Max
блокируют всякие синхронизации, операции с внешним миром, но никак не обычный процессинг ответа
код там - js-овский, выполняется в один поток. Что я делаю - беру нужный тайм-ренж, маплю его в массив объектов, с дефолтными 0-выми значениями, и мёржу с получеными в бд-шке данными. и всё это на стороне сервера, в один, блокирующий поток. и мне это не нравится) ищу обходные пути - не то чтобы мне горит, просто любопытно, как это можно обыграть по-иному
Nick
С сего вы взяли что будет именно один поток? Найстройте сколько вам нужно. И не думайте о производительности, пока не настроете метрики и не зададите метрики, относительно которых будете определять необходимость оптимизаций
Aga
Aga
Возможно мы говорим о разных нодах, но NodeJs однопоточна)
Nick
Вас в роутер и несколько инстансов воркеров ноды не учили?
Nick
Та же мнооопоточка, только немногт ручная
Aga
Может ещё капусту рядом с компьютером своим поставишь, тогда будет капустная нода.
Aga
ахахах, хочешь 4 потока, создай 4 ноды и будет многопоточность. Как же сука это логично
Aga
Пойду ребятам из ноды скажу, что оказывается нода многопоточна
Max
Nick
Вполне логично от языка не приспособленного для серверной части
Nick
Нода допустима только на легоньких демомроектах или петпроджектах, запускаемых на дешманных впсках
Aga
Aga
Или ты от несения хуйни удовольствие получаешь?
Aga
Ты сам предложил решение проблемы однопоточности, но в тоже время заявляешь что это казуальная штучка
Aga
Это как быть веганом и каждый раз кушать говядину
Aga
Или как быть мусульманином и есть свинину
Aga
Ну ты понял короче, противоречиво
Nick
Не предлагал решение, а вмеголишь намекнул что не нужно мыслить одним потоком
Anonymous
Монго уже можно использовать на манер РСУБД?
Nick
Nick
средне плохо, монга не любит связи, хоть сейчас и есть механизмы аналогичные джойну, но он удобен только когда свзяь одна, максимум две, и нет необходимости делать фильтры по сджойненным коллекциям
Nick
если у вас много связей - берите обычный sql, носкл не для этого
Anonymous
Ну да
Anonymous
Иногда хочется странного
Max
Иногда хочется странного
я на проекте нагородил вьюшки которые агрегируют в себе несколько коллеций и сделал их плоскими на манер реляционок =) не скажу что это хорошо для перфоманса, но выглядит симпатично. да и удобно отдавать на фронт для разных табличек
Anonymous
Что то похожее на CQRS?
Nick
Max
Что то похожее на CQRS?
погуглил что это) да, немного схоже - просто так очень удобно делать фильтры/пагинацию с юайки по нескольких коллекциях сразу
Aga
Aga
Я тебе привёл пример, а ты мне про мои рамки
Nick
??
это оффтоп уже, твой пример лишь показывает что ктото узко мыслит
Aga
Я тебе не IPhone XR, с рамками у меня все хорошо
Nick
Anonymous
Легаси
Max
Что то похожее на CQRS?
спасибо к стати) теперь я знаю что переизобрёл CQRS, и у меня не говоно-вьюшки а паттерн)
Nick
нода однопоточна, братан