Задать вопрос
  • Какой Road Way сделать чтоб прокачать навыки девопса под php разработку?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    ну изучи

    1. какую-то систему мониторинга, чтобы мог развернуть, настроить какие-то метрики и смотреть за ними. Возможно + графану для визуализации
    2. Какой-нить инструмент для CI (Jenkins, Gitlab CI...)
    3. Какой-нить инструмент для CD (можно реализовать на базе тех же Jenkins, Gitlab CI)
    4. собственно сам git и систему код ревью (Gitlab, Bitbucket, Github, Gerrit)
    5. системное администрирование на уровне установки и базовой настройки пакетов - все что вам нужно, типа кафки, раббит, elastic search и др
    6. bash маст хев для автоматизации установок. Питон на базовом уровня для простых вещей, возможно кусков мониторинга

    Ну и главное - инфраструктуру своего проекта, чтобы понимать от и до, как из исходников собирается и запускается проект.
    Ответ написан
    Комментировать
  • Как автоматически задеплоить бота Telegram?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Для начала, следует научиться запускать бота где-то на сервере руками.
    Потом описать инструкцию что для этого делается (новая папка, редактирование конфига, запуск бота).
    Затем реализовать эти команды в скрипте, который вызывается нажатой в веб-интерфейсе кнопкой.

    Вообще вопрос немного неясен. Ответ как бы элементарный - установка и настройка бота.
    Детальный ответ тут больше будет как выполненная за вас работа, а в этом случае вам на фриланс
    Ответ написан
    3 комментария
  • Стоит ли использовать Docker в продакшене для нескольких сайтов на одной VPS?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Для сайтов - нет смысла.
    Докер для развертывания удобен в случае различных кастомных настроек, установки плагинов и так далее. А банальный nginx+php разворачивается на любой ОС очень быстро.

    Мне также очень нравится то, что БД пишет данные в volume, который потом можно сжать и скопировать на другой сервер, а не охреневать когда надо перенести базу на сотни гигов.

    Кто мешает выделить отдельный volume для базы данных без всяких докеров?
    Это может быть какой угодно volume - раздел, виртуальный диск, рейд, что угодно.

    Либо использовать Докер только в крупных проектах которые размещаются на отдельных VPS.

    IMHO докер вообще для сайтов не лучшее решение. А самое крутое преимущество докер получает вместе с оркестрацией типа kubernetes/openshift, когда десятки и сотни приложений/микросервисов.
    Ответ написан
    Комментировать
  • Как правильно написать bash alias?

    saboteur_kiev
    @saboteur_kiev Куратор тега bash
    software engineer
    Переменные в баш раскрываются не во время выполнения команды, а перед выполнением команды, вдобавок цифровые аргументы не относятся к алиасам, а относятся к командам, то есть так как вы пишете не выйдет.
    Пользуйтесь функциями, их тоже можно сохранить в ваш профайл, и они тоже автодополняются
    Ответ написан
    Комментировать
  • Возможно ли с нуля сделать сервер для игры Mafia 2?

    saboteur_kiev
    @saboteur_kiev Куратор тега Разработка игр
    software engineer
    Реверсишь сетевую активность между сервером и клиентом. Вычисляешь все необхоимые пакеты. Пишешь свой сервер.
    Но работа эта может быть огромная.

    Свой сервер для Lineage 2 писали несколько лет множество команд добровольцев. Он смог покрыть примерно 60-70% основного функционала. Потому что на сервере и 3д геодата мира, и АИ для монстров и обработка всех событий, заклинаний, навыков с их формулами, и квесты и так далее.
    Свой сервер Battlenet для starcraft/diablo писали за месяц, потому что там в общем только авторизация и лобби для старта игры.

    В зависимости от того, что делает сервер Мафии (не играл), может быть что угодно. Ну и реверсинг, если сейчас сервер уже нерабочий - КРАЙНЕ затруднен.
    Ответ написан
    3 комментария
  • Windows Home. Возможно ли использовать в организации?

    saboteur_kiev
    @saboteur_kiev Куратор тега Windows
    software engineer
    но и в целом законность использования одноранговой сети без каких-либо средств защиты, например того же доступа по учеткам из Active Directory

    Так а откуда Active Directory в одноранговой сети?
    Ну и собственно в Windows Home нет поддержки Active Directory.

    И с чего это Active Directory это средства защиты? Это средство централизированного управления.
    Ответ написан
    Комментировать
  • Python как импортировать функцию из файла находящегося в другой папке?

    saboteur_kiev
    @saboteur_kiev Куратор тега Python
    software engineer
    можно так
    import sys
    sys.path.append('../folder1')
    
    from name  import функция
    Ответ написан
    2 комментария
  • Как выбрать расстояние до веб сервера?

    saboteur_kiev
    @saboteur_kiev Куратор тега Компьютерные сети
    software engineer
    Поставь веб сервер на своем компе, и ходи на него. Не будет промежуточных серверов.
    Ответ написан
  • Как время передачи запроса зависит от расстояния до веб сервера?

    saboteur_kiev
    @saboteur_kiev Куратор тега Компьютерные сети
    software engineer
    Известно, что желательно иметь сервер физически поближе. Но хотелось бы знать цифры. Как задержка запроса зависит от расстояния до сервера? Сколько промежуточных серверов проходит запрос, какая средняя задержка на каждом сервере.


    в общем случае, базовую инфу можно получиьт через команду tracert или traceroute (смотря какая ОС). Она показывает пинг ко всем промежуточным хостам (если они отвечают) вплоть до вашей цели.

    Как задержка запроса зависит от расстояния до сервера?

    В общем случае считаешь расстояние и делишь на скорость света, если это оптика или ethernet. Например, как бы не пыхтеть, из Европы в штаты 10 мс пинг не сделать, тупо не успеет пакет дойти.

    В частном случае к этому добавляются задержки на каждом промежуточном хопе, ибо это какой-то сервер или устройство, на котором ваш пакет должен обработаться и отправиться дальше.
    Ответ написан
  • Context switch per second (Linux) 1.3млн это много или мало?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Нужно понимать как работает многозадачность и распределение процессорного времени по ядрам.
    В Линукс довольно сложно посчитать реальную занятость процессора.
    В сам свитчинг ничего упираться не может, точнее нет каких-то специальных лимитов. Это обычная процессорная занятость, относящаяся наверное к system cpu usage, но это неточно. Чем быстрее процессор, тем быстрее он может выполнять свитчинг и тем больше свитчингов в секунду может быть выполнено, это просто выполнение инструкций процессора вне рамках процессов, а внутри ядра системы, точнее process scheduler.

    Но проблема в том, как именно распределяется процессорное время. process scheduler в ядре линукса выделяет слайсы примерно по 10-15 милисекунд на процесс, потом переключает на другой. Для процессов, которые что-то активно вычисляют (например архивация), после анализа деятельности может быть выделен более длинный слайс или несколько подряд, то есть уменьшается свитчинг. При этом оценка времени, которая нужна на сам свитчинг - она довольно сложная, ведь для подсчета количество потраченного cpu нужно потратить cpu, и эти 10-15% может на самом деле не существовать.

    Если парралельных процессов очень много и все хотят что-то делать (чекнуть load average), то машина просто не успевает обработать их все, и тратить на переключение приличное количество ресурса, вместо того чтобы непосредственно выполнять код ваших программ.
    Таким образом какого-то определенного лимита на context switching нет, это просто еще одна метрика, которая может подсказать что слишком много одновременно запускаете, можно попробовать оптимизировать.

    Ну или просто не хватает CPU, а система ошибочно показывает свободные ресурсы, которых на самом деле нет.

    Линукс на самом деле не так уж детально может посчитать точное количество ресурсов. Там выполняется все очень просто - на входе в контекст засекается timestamp, на выходе из контекста засекается таймстамп, и потраченное время дописывается в метаданные процесса (для каждого ядра, если процесс многопоточный). Исторические значения не записываются, в метаданных процесса есть только вот это - сколько всего cpu usage с момента старта процесса.
    Если запустить какой-нить top, он будет каждые 1-2 секунды бегать по списку процессов, сравнивать этот параметр и показывать результат загруженности за последние 1-2 секунды, но вот уточнить процесс занял свои 25% cpu плавно в течение секунды, или он занимал 100% cpu первую четверть секунды или третью - вы уже не сможете.

    Ну и само ядро считает свои внутренние потоки так же само.
    И только активность самого process scheduler (то есть cpu затраченное на анализ и переключения процессов) не может быть красиво подсчитана.

    p.s. я не разработчик линукс, поэтому это мое IMHO основанное на наблюдениях и обзорных статьях о работе современного планировщика, если будут гуру которые меня поправят или подтвердят сказанное - будет круто.
    Ответ написан
    Комментировать
  • Задать масштаб для мобильных браузеров?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    для js есть готовые библиотеки, которые определяют разрешение в зависимости от браузера и ОС (вычисляет мобильные и десктопные версии).
    Ответ написан
    Комментировать
  • Как называется данная система?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    так и называется oauth.
    Выдача токенов.
    Обычное апи для авторизации + документация как ваше API использовать и интегрировать в другие сайты
    Ответ написан
  • Можно ли записать данное sed выражение в одну строку?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Что-то непонятно у вас с текстом.
    Приведите несколько строк из файла с alb.ingress.kubernetes
    там перевода строк нет, или как?
    sed не умеет работать с мультистроковыми регулярками, он считывает текст построчно и затем сравнивает с паттерном, при этом в считанной строке символа перевода строки собственно даже и не будет.
    Можно попробовать работать с мультилайн через наполнение pattern space, правда там будет конструкция посложнее.

    Наверное проще, если вы нормально приведете пример вашего лога, и можно будет посмотреть как там зацепиться.
    Ответ написан
    Комментировать
  • Насколько опасно оставлять сервер дома без присмотра?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Если электричество регулярно не выключается, то пожаробезопасность в принципе минимальная.
    Ответ написан
    Комментировать
  • Могу ли я явно указать в Jenkins SCM настройках, какой pull request из bitbucket хочу использовать для билда?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    ну можно указывать хеш коммита, но коммит же должен быть в любом случае в какую-то ветку слит.
    Ответ написан
    1 комментарий
  • Можно ли извлечь ссылку на приватный telegram канал?

    saboteur_kiev
    @saboteur_kiev Куратор тега Python
    software engineer
    Нет конечно.
    Ссылка на канал является защищенной информацией, ее может только сгенерировать и перегенерировать админ с правами.
    Ответ написан
    Комментировать
  • Какие характиеристики у оперативной памяти при загрузке ее данными?

    saboteur_kiev
    @saboteur_kiev Куратор тега Железо
    software engineer
    Можно банально посмотреть что тратит батарею больше всего.
    Из основных потребителей - экран, CPU, GPU, жесткий диск, SSD
    Потом идет остальная периферия - звук, сетевая карточка.
    Память ест настолько мало, то это практически никто и не считает. А Линукс молодец.
    Кстати, Windows, начиная с десятки, тоже так делает.
    Ответ написан
    6 комментариев
  • Белый IP адрес и подключение по ssh на устройство внутри домашней сети, как сделать?

    saboteur_kiev
    @saboteur_kiev Куратор тега Компьютерные сети
    software engineer
    Любой порт ставь, какой хочешь и внешний и внутренний.
    Главное, чтобы внутренний соответствовал тому порту, на котором у тебя ssh поднят, а внешний ты в клиенте указывал.
    Ответ написан
    Комментировать
  • Как найти вхождение в строке "@слово слово"?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    (@\w+\s?\w+).*\1

    что-то в этом роде?
    Ответ написан
    Комментировать
  • Плохой ли у меня метод обучения и почему стало скучно учится?

    saboteur_kiev
    @saboteur_kiev Куратор тега IT-образование
    software engineer
    Лучший способ обучение это теория, а потом практика


    Как бы все знают, что лучший способ обучения это практика.
    Так устроен мозг, так устроен организм.
    А теория она должна идти где-то рядом. И она хорошо воспринимается, когда потыкал тыком, что-то получилось, что-то нет, а потом теория просто на такое кладется как масло на хлеб.
    Ответ написан
    Комментировать