• Зачем нужна systemd-run?

    Radjah
    @Radjah
    https://www.freedesktop.org/software/systemd/man/s...

    systemd-run — Run programs in transient scope units, service units, or path-, socket-, or timer-triggered service units


    --pty, -t

    When invoking the command, the transient service connects its standard input, output and error to the terminal systemd-run is invoked on, via a pseudo TTY device. This allows running programs that expect interactive user input/output as services, such as interactive command shells.
    Ответ написан
    Комментировать
  • Когда использовать jpg а когда png?

    SmthTo
    @SmthTo Куратор тега Вёрстка
    Все перепёлки мира будут оплакивать мою смерть.
    Типичные примеры использования:

    JPG — фото, иллюстрации без прозрачности, где важны цвета, переходы, оттенки и т. п. В таком случае JPG выигрывает у других форматов в плане соотношения качество/цветность/размер. Так себе для контрастных схем и текстов.

    PNG — фотографии, схемы, графические элементы с прозрачностью, всякие вылетающие за границы элементы, где относительно много цветов (фото людей, инопланетян и т. п.). При соотносимом с JPG размере файла, PNG содержит гораздо меньше цветов, а сравнимые с JPG по количеству цветов файлы PNG будут весить очень много (поэтому для фото используют JPG). Если дело доходит до схем и текстов, PNG предпочтительнее JPG в силу отсутствия артефактов на контрастных краях.

    GIF — анимации. Ну тут вообще отдельная песня. Ему на смену пророчат APNG и MP4, но воз и ныне там.

    SVG — иконки, иллюстрации. Поддерживает прозрачность, бесконечно тянется. Обычно те же иконки в SVG весят меньше, чем в PNG при одинаковом фактическом размере использования. Можно анимировать (отдельная тема и куча особенностей) и управлять с помощью CSS и JS, если встраивать inline (можно и через #use, но с ограничениями). Наверное, самый чувствительный к ошибкам формат, потому что состоит из кода: сложный SVG-файл может убить производительность. Можно очень легко зашить вредоносный код, поэтому запрещён в вёрстке писем.

    P. S. Я не могу описать все случаи, бывают уникальные, так как процесс выбора формата зависит от контента вашего изображения. В каждом конкретном нетипичном случае — думайте сами. К примеру, если векторная иллюстрация весит много, то есть смысл перевести её в JPG или PNG. Иногда SVG-иконка может весить в разы больше её PNG-аналога (при одинаковом фактическом размере использования, например, 100 на 100 пикселей при 1:1 размере viewport к физическому разрешению экрана) — тут многое зависит от методов и качества создания таких иконок. Как правильно отметил @Adamosу, иногда затраты на рендеринг SVG (на стороне клиента) не окупают его преимуществ, и приходится использовать растровые изображения. Ну и т. д… Особенностей использования форматов — куча.

    P. P. S. Почитайте о Retina, ибо нет никакого «для ретины следует юзать JPG».
    Ответ написан
    22 комментария
  • Несколько Claim на один Persistent Volumes?

    Суть в том, что PV - статические сущности.
    PV создаются вручную и отражают максимальный физический объём, который могут предоставить(на самом деле - сколько администратор решил предоставлять).
    PVC - это по сути запрос на предоставление PV. Kubernetes попытается найти такой PV, который подойдёт к указанным параметрам - в вашем случае, он будет искать свободный PV с размером 20Gi или больше. Как только такой будет найден, будет создана связка PV-PVC - т.е. пока действует Claim, другие поды не смогут запросить этот же PV.

    Однако, несколько под могут использовать один и тот же PVC.

    storageclass.storage.k8s.io "persistent-data" not found

    Возможно, вы не создали StorageClass с таким именем
    Ответ написан
    1 комментарий
  • Где целесообразно использовать LXC/LXD?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Используем LXC-контейнеры уже несколько лет в составе Proxmox, никаких серьёзных проблем ни разу не возникало. Сырость технологии проявляла себя крайне недолго, буквально до первого апдейта платформы после изменения в Proxmox технологии контейнеров с OpenVZ на LXC.

    Почему в 2018 году OpenVZ-хостинги распространены шире - затрудняюсь ответить, видимо владельцы купили лицензию у Виртуоззо и теперь залочились на этом старье :)
    Ответ написан
    4 комментария
  • Где целесообразно использовать LXC/LXD?

    @hx510b
    "Я знаю, что ничего не знаю"
    LXC удобно использовать для отвязки от ОС хоста, как современный аналог OpenVZ (OpenVZ устарел, т.к. не поддерживается новыми ядрами и дистрибутивами). Мы использовали LXC для виртуализации Linux сервисов. LXC значительно эффективнее расходует ресурсы, чем KVM.
    LXC внутри больше похож на виртуальную машину, чем Docker. В LXC почти все привычные инструменты работают как обычно. Но изолированно от хост системы. Можно ставить пакеты, менять настройки etc, запускать демоны и использовать стандартные инструменты Linux среды и т.д. Для LXC можно подтянуть специфичные для дистрибутивов шаблоны. Например, на хосте с Ubuntu поднять гостя с Centos. При желании гостя можно держать на виртуальном диске.

    Еще про разницу между LXC и docker написано тут: https://vps.ua/blog/docker-and-linux-containers/
    Ответ написан
  • Имеет ли смысл использование Docker?

    @vitaly_il1
    DevOps Consulting
    На этом сервере крутится php приложение. для управления сервером используется ISPmanager.
    Изза ISPmanager я имею ограничения по использованию ПО. Также есть проблема с утечкой памяти изза чего приходится перезагружать php-fpm каждые несколько часов

    Начните с управления сервером через CLI, это решит часть проблем.
    Для перезагрузки тоже докер не нужен.
    Ответ написан
    Комментировать
  • Letsencrypt wildcard + bind: как автоматически продлевать сертификат?

    @fluffybear
    Вариант делегировать 3 уровень на внешний dns с поддержкой api не рассматривали? Например, у cloudflare на бесплатном аккаунте есть поддержка dns.
    Ответ написан
    2 комментария
  • Как запустить .exe файлы?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    import os
    os.system('"C:/Windows/System32/notepad.exe"')
    или
    import subprocess
    subprocess.call('C:/Windows/System32/notepad.exe')
    Ответ написан
    2 комментария
  • Для чего нужны директивы препроцессора на языке С и С++?

    Zoominger
    @Zoominger
    System Integrator
    Лень печатать, почитайте сами:
    5d85f85fd3f76981179317.png
    5d85f89945186944026071.png
    Ответ написан
    Комментировать
  • Какую DB для мессенджера выбрать?

    @xfg
    Популярные NoSQL решения не используют джойны поскольку это в любом случае ведет к сетевым походам на различные шарды. Даже если это скрыто от пользователя. Соответственно в распределенной системе вы не получите джойнов как в Postgre. Более того, если пытаться шардировать Postgre, у вас и там возникнет проблема джойнов между шардами и от подобных джойнов придется отказаться.

    Проблема в том, что вы подходите к хранению данных в NoSQL также как в RDBS. Это неверно и для распределенных систем вполне себе допустимо хранение избыточных данных. Вы вполне например можете записывать новое сообщение на множество шардов, на шард где хранятся сообщения группы и на шарды с юзерами. Делать это можно по событию, которое генерируется при создании сообщения, далее оно попадает в rabbitmq, а оттуда подписчикам, которые запишут сообщение на нужные шарды.

    Таким образом, вы всегда сможете прочитать вместе с пользователем его новые сообщения с одного шарда. Делают по разному, основная мысль в том, чтобы максимально упростить сбор данных, для того или иного экрана приложения.

    Например в социальных сетях так советуют собирать ленту новостей. Система принимает пост от пользователя, а затем сервис в фоновом режиме раскладывает этот пост по всем пользователям (шардам), которые этот пост могут увидеть. Соответственно отображение ленты новостей становится тривиальной задачей. Также нужно быть готовым к тому, что в распределенных системах принята согласованность по событию вместо согласованности по транзакции. Проще говоря, не все пользователи увидят новый пост в своей ленте мгновенно, а спустя некоторое время и для больших проектов вроде facebook или amazon это ок. Из-за этого иногда на facebook можно обновлять ленту с переодичностью в секунду и в какой-то момент получить новый пост у которого дата добавления была 1 минуту назад.

    По базам данных можно выбрать любую популярную с поддержкой шардинга из коробки, которая больше нравится или с которой лучше знакомы. Знакомы с кассандрой, отлично используйте её, знаете монго, берите её. Не знаете ничего, почитайте плюсы и минусы обоих систем и решите для себя, что больше вам подходит.
    Ответ написан
    Комментировать
  • Какую DB для мессенджера выбрать?

    @GWindoz
    Никто ничего не сказал о CockroachDB. Она ведь соответствует требованиям автора вопроса. И действительно работает с join'ами и транзакциями
    Ответ написан
    Комментировать
  • Си или С++, что учить в начале?

    POS_troi
    @POS_troi
    СадоМазо Админ, флудер, троль.
    В начале, в начале совершенно фиолетово.
    Берите любой и прокачивайте мозги для мышления в нужную сторону, а язык уже потом будите выбирать.

    P.S. такой вопрос тут ежедневно всплывает, потрудитесь прочитать.
    Ответ написан
  • В Postgresql схема: зачем нужна и как я её могу использовать в своих проектах?

    Melkij
    @Melkij
    PostgreSQL DBA
    В оракле схем разве нет?..

    schema - дополнительный уровень структуризации объектов. Как namespace в программировании. И, к слову, входит в стандарт SQL.

    Вы можете сделать таблицы:
    user_subscriptions
    user_orders
    user_favorites
    Вы можете сделать
    user.subscriptions
    user.orders
    user.favorites
    И в этом нет никакой разницы для СУБД. Но может быть удобно разработчику оперировать не с сотней таблиц одним списком, десятки из которых с одинаковыми префиксами (т.к. относятся к своим сущностям), а отдельные схемы по сущностях.

    Пилить же одну таблицу на несколько смысла при этом не так много, зато добавляется хлопот.
    Если вы хотите давать прямой доступ пользователю к базе - то зачем? Не надо так делать в разделяемой среде. Любую СУБД можно положить каким-нибудь интересным запросом. А в то что люди временами будут писать интересные и сильно творческие запросы - по опыту DBA вам гарантирую. Иногда такого наворотят... 0,5тб временный файлов одним запросом, например. Или сожрать 30гб RAM и увести базу в аварийный рестарт от OOM.
    Ответ написан
    1 комментарий
  • Как подключить 2 монитора VGA к 1 компьютеру?

    Moskus
    @Moskus
    Можно, если установить вторую видеокарту или заменить имеющуюся на другую, с двумя аналоговыми выходами. Одними проводами это не решается.
    Ответ написан
    1 комментарий
  • Как выйти в интернет не через vpn?

    martin74ua
    @martin74ua Куратор тега Linux
    Linux administrator
    повторю свой ответ на предыдущий ваш вопрос. Настраивайте роутинг и маскарад. В этом случае вам нужен source routing, без особых извращений - либо микротик, либо опенврт....
    Ответ написан
    Комментировать
  • Как сделать на микротике, чтобы физическая сеть и виртуальная (VLAN) видели друг друга?

    @6yHTapb78RUS
    у вас на порту в д-линке должен быть tagged, а на порту 5 в Микроте untagged. и на Микроте VLAN, который вы хотите подружить с некой сетью, должен быть в том же бридже. ну а потом уже маршруты.
    5d334b8e501dc133847378.png
    Ответ написан
  • Порекомендуете книги по С++ для самых новичков?

    Theon
    @Theon
    Фрилансер по веб-разработке
    Рекомендую серию данных книг. Мне они раньше очень помогли.

    5d336f4c25c0f109842290.jpeg
    Ответ написан
    Комментировать
  • Какую роль ansible лучше использовать для создания только бд и юзеров в PostgreSQL без применения остальных настроек?

    Sanes
    @Sanes
    А в чем сложность собственно? Там плейбук на 10 строк. По крайней мере для Mysql.

    ###
       - name: 'Pwgen MySQL User Password'
          command: pwgen 12 1
          register: mysql_user_pass
    
        - name: 'Add MySQL DB'
          mysql_db: 'name={{ username }} encoding=utf8 login_user=root login_password={{ mysql_root_pass }} state=present'
    
        - name: 'Add MySQL user'
          mysql_user: 'name={{ username }} password={{ mysql_user_pass.stdout }} priv={{ username }}.*:ALL login_user=root login_password={{ mysql_root_pass }} state=present'
    Ответ написан
    3 комментария
  • Почему могут не идти логи с pod в elasticsearch? Куда можно копать?

    chemtech
    @chemtech Автор вопроса
    Линуксойд, DevOps
    kubectl --namespace=efk exec -it efk-fluent-bit-58vn5 -- /bin/bash
    root@efk-fluent-bit-58vn5:/var/log/containers# ls | grep db-master
    root@efk-fluent-bit-58vn5:/var/log/containers#

    зашел в fluentd - а там лога нет.
    Ответ написан
    Комментировать
  • Как узнать ресурсы сервера по ssh?

    chemtech
    @chemtech
    Линуксойд, DevOps
    Inxi представляет обширную выводимую информацию в более читаемом виде, чем другие утилиты и имеет множество параметров для её группировки. Пакет оказывает неоценимую помощь при использовании консольного linux-а, в том числе при удалённом подключении через туннель ssh.

    sudo yum install epel-release
    sudo yum install inxi
    Как пользоваться написано тут:
    www.binarytides.com/inxi-system-information-linux
    Ответ написан
    Комментировать