• С каким слоем работают утилиты - с апаратным слоем или слоем драйверов?

    chupasaurus
    @chupasaurus
    Сею рефлекторное, злое, временное
    С драйверами. Указанные вами устройства в персональном компьютере отправляют метрики в чипсет, с которого через драйвер они становятся доступными программам.
    Ответ написан
    Комментировать
  • Нужно ли шифровать токен сброса пароля с помощью email?

    @feanor7
    Системный администратор
    Постройте модель нарушителя. Без подробностей о Вашей системе я скажу нет. Если доступ к ящику сотрудника можно получить из открытого интернета, тогда может быть.
    Ответ написан
    Комментировать
  • Что такое ElasticSearch?

    AlexXYZ
    @AlexXYZ
    O Keep Clear O
    Знаете, я с вами соглашусь, что хорошую вводную по Elastic трудно найти. Пока сам не переварил доков и не набил шишек многие элементарные понятия оставались для меня неясными. Поэтому вот моя вводная: Elastic можно использовать как NoSQL БД, только надо быть внимательным, т.к. всё-таки его основная задача поиск, а не удовлетворение функций БД. Например, если вы не настроили хранение исходных данных, а только индексацию, то свои данные вы уже не извлечёте из него. НИКОГДА. Только отдельные выражения, удовлетворяющие условиям поиска. Всё, тупик. Так же нельзя повторно индексировать уже загнанные в него данные. Т.е. перед загрузкой данных надо грамотно настроить индексацию, т.к. перестроить индекс, как это делается в реляционной БД невозможно. Нужно придумать новую схему индексации и перезалить данные в Elastic. Именно поэтому основное использование Elastic - как дополнение к существующей БД из которой данные можно перезалить по одному или полностью в Elastic (можно, конечно сделать схему Elastic->Elastic, но тоже есть нюансы).
    Ещё пару слов про схему. Это ЛОЖЬ, что в Elastic нет схемы данных. Она как раз есть и ооочень жёсткая. Жёсткая до того, что однажды определив, вы не сможете её поменять. Изначально Elastic оказывает медвежью услугу, разрешая вам дополнять схему по-умолчанию, но когда вы разберётесь с этой темой, то можете обнаружить, что Elastic "понастроил" такого у себя внутри, что остаётся только охреневать и переделывать всё явно, отказавшись от его "услуг" по автоматическому добавлению полей в схему.
    Так же в Elastic очень непросто строить сложные запросы на поиск и агрегатные запросы. Совершенно неинтуитивно. Но если освоитесь, то будет вам счастье. )))
    Несмотря за такие "страшные" вещи - Elastic классная система и по производительности агрегатных запросов не уступает платной версии MSSQL в поиске в многопроцессорных системах (проверял на одинаковых аппаратных конфигурациях с 16 ядрами). Так что если вам хочется большую скорость в агрегатных запросах и главное - это бесплатность, то берите и осваивайте Elastic. Мощности и возможности у него огромные. Но... нужно потратить приличные усилия на изучение.
    Ответ написан
    1 комментарий
  • В чем разница между разными способами выполнения и разделения кода в nodejs?

    @apapacy
    Существенным ограничением node.js является то что движок JavaScript в любой момент времени может выполнять ровно один скрипт или часть скрипта, если в скрипте используются функции обратного вызова или промисы.

    Если на сервере доступно несколько ядер то можно запустить кластер node.js. Проще всего это сделать при помощи PM2 см. pm2.keymetrics.io/docs/usage/cluster-mode При этом практически не придется делать изменения в приложении. За одним исключением. Нельзя использовать глобальное состояние (например значение переменных которые определены на уровне модуля, подписку на сообщения и т.п.) т.к. это состояние будет у каждого экземпляра свое. При необходимости для синхронизации глобального состояния дополнительно приходится использовать как правило redis-сервер.
    Ответ написан
    Комментировать
  • Как "связать" параллельные процессы в nodejs?

    Смотрите, вот здесь я вижу, что эта библиотека возвращает объект типа ChildProcess.
    А значит вы можете послать дочернему процессу сообщение и получить его.

    Если же вам нужна более сложная логика, то можно использовать pipe-каналы или tcp-соединения. Или любой другой способ межпроцессорного взаимодействия (гуглить, nodejs IPC или nodejs inter-process communication).
    Ответ написан
    2 комментария
  • Почему не работает динамический require в роуте?

    @Coder321
    Потому что require кеширует первое значение и изменения в файле ничего вам не дадут.
    Ответ написан
    4 комментария