Задать вопрос
  • Как отобразить статус выполнения systemctl start|restart|stop?

    @Ke1eth
    software engineer
    Вариантов мыслится аж 2:
    1) systemctl start name.service && echo SUCCESS || echo failure
    2) в конфиге /etc/systemd/journald.conf раскомментировать или дописать:
    ForwardToConsole=yes
    MaxLevelConsole=debug
    Ответ написан
    Комментировать
  • Как отобразить статус выполнения systemctl start|restart|stop?

    @Aves
    Можно например
    $ sctl() { sudo systemctl "$@"; systemctl status "${@:2}" --lines 0 --no-pager 2>/dev/null; }
    $ sctl restart mongodb
    ● mongodb.service - High-performance, schema-free document-oriented database
       Loaded: loaded (/usr/lib/systemd/system/mongodb.service; disabled; vendor preset: disabled)
       Active: active (running) since Пт 2016-06-10 10:32:56 MSK; 13ms ago
     Main PID: 10048 (mongod)
        Tasks: 1 (limit: 512)
       CGroup: /system.slice/mongodb.service
               └─10048 /usr/bin/mongod --quiet --config /etc/mongodb.conf
    Ответ написан
    Комментировать
  • Как вы защищаете сервер от взлома?

    Используйте контенеры. Создавайте отдельный контейнер со всем софтом для каждого сайта отдельно. В корневой системе оставьте только базовый софт и фаервол. Прокиньте внутрь только 80/443 порты. Ну и ссх по ключу в корневой. Даже если вам таки взломают один из сайтов - проникнуть в соседний контейнер будет проблематично. Что бы не настраивать каждый контейнер ручками - используйте chef/ansible или что угодно на ваш вкус. И каждый новый сайт - новый контейнер со своими mysqld/php/nginx и всем остальным. Даже если случайно установите что-то не защищенное из софта - получить к нему доступ их вне проблематично.
    Создайте отдельный контейнер с nginx на который фаервол перенаправит 80/443 порты. А он уже проксирует запросы в нужные контейнеры. В нем же храните и SSL сертификаты и ключи. Что б их не угнали при взломе.
    И конечно ossec или аналоги + оповещения от него. Расскажут вам о вторжении в тужу минуту. Ставить в каждый контейнер.
    Ответ написан
    Комментировать
  • Как создавать django модели для тестов?

    sim3x
    @sim3x
    Про разнообразие видов тестов
    https://events.yandex.ru/lib/talks/535/

    В зависимости от вида - необходимость в использовании бд разнится
    Для приемочных-фнкциональных - БД должна быть с данныи близкими к реальным (идеально, обфусцированная база текущего продакшена) на СУБД с настройками максимально близкими к продакшену
    Для юнит - БД нужна только если тестируется ОРМ

    factory_boy для юнит тестов
    selenium для приемочных

    www.tdd-django-tutorial.com/tutorial/1
    Ответ написан
    Комментировать
  • Как создавать django модели для тестов?

    un1t
    @un1t
    Во-первых в продакшене тесты не надо запускать. А во-вторых тесты должны запускаться в отдельной базе.
    Посмотри pytest и django-pytest.

    Вот тут можно примеры тестов посмотреть
    https://bitbucket.org/ishalyapin/django-test-examp...
    Ответ написан
    Комментировать
  • Как узнать кто "проинклудил" файл?

    Melkij
    @Melkij
    PostgreSQL DBA
    В трассировке вызова include отображается: debug_backtrace
    Ответ написан
    1 комментарий
  • Как сконвертировать длинное число (строковое представление в hex) в экспоненциальное представление?

    lam0x86
    @lam0x86
    Можно, например, использовать тип BigInteger (из System.Numerics) для парсинга числа, а затем конвертировать его в double. Только надо заранее удалить префикс "0x".
    var parsedValue = BigInteger.Parse("081a8269359ea02246152537192c7827", NumberStyles.HexNumber);
    var result = (double)parsedValue;
    Ответ написан
    Комментировать
  • Как решить проблему при установке libcurl4-openssl-dev?

    Пробуйте собрать сами. У меня тоже из репы не вставал
    Ответ написан
    Комментировать
  • Как оптимизировать большое количество jQuery диалогов на странице?

    Зависит от задачи.

    Если нужно, чтобы окно мгновенно открывалось, то лучше все загружать и формировать UI заранее, в фоне (лучше в отдельном потоке, создав его с помощью setTimeout). Но это может неблагоприятно сказаться на потребляемом трафике и добавить нагрузку при старте.

    Я бы, наверно, выбрал вариант с отрисовкой при первом обращении, а потом скрывал, не удаляя из DOM.

    А еще можно попытаться поискать балланс, проанализировав статистику. Наиболее нужные и частоиспользуемые диалоги можно подгружать заранее, остальные - при обращении. Те, которые чаще всего используются только один раз (то есть, редко), можно из DOM удалять для освобождения памяти.
    Ответ написан
    Комментировать