Задать вопрос
  • Можно ли заменить javascript языком dart/flutter?

    shurshur
    @shurshur
    Интересно, что автор вопроса написал, что является бэкенд-разработчиком, а в ответах все рассуждают про фронт...
  • Сервис для входа на сайт через смс код?

    shurshur
    @shurshur
    Vladislav, flash call невыгоден операторам (невзятый звонок бесплатен) и они с этим борются. Поэтому работает это не очень надёжно и может регулярно отваливаться.

    СМС для A2P стоят очень дорого, да. Раньше операторы оправдывались борьбой со спамом (и это даже правда, потому что высокие цены на деле сильно уменьшили объёмы спама в СМС), но уже давно превратилось в кормушку операторов - они частично компенсируют недополученную прибыль от абонентов, состригая её с бизнесов. Можно сделать дешевле только за большие объёмы и шаблонирование трафика, но сайту с какой-нить жалкой тыщей СМС в месяц это не светит.

    Обычная практика - это, например, регистрация через соцсети. Фактически проблема регистрации перекладывается на соцсеть. Не супернадёжно, зато бесплатно.
  • Как получить цвет пользователя в telegram на python?

    shurshur
    @shurshur
    EgorKhabarov, надо посмотреть в первую очередь в описание родного API, ведь именно по нему работают официальные клиентские приложения. Не исключено, что telethon просто ещё не знает про новые фичи. Или, как вариант, они слишком в неочевидном месте находятся, и их нужно как-то откопать.
  • Как получить цвет пользователя в telegram на python?

    shurshur
    @shurshur
    EgorKhabarov, нет, он не получает эту информацию через Bot API, поскольку - повторюсь - в Bot API эта информация не предоставляется. У этого бота есть вторая интеграция с Telegram на базе MTProto, которая это и делает.
  • Как получить цвет пользователя в telegram на python?

    shurshur
    @shurshur
    EgorKhabarov, использовать клиентский API (MTProto). Но это довольно бессмысленная инфа, поэтому проще плюнуть.
  • Как получить цвет пользователя в telegram на python?

    shurshur
    @shurshur
    EgorKhabarov, очевидно, что этот бот не использует Bot API для получения подобной информации.
  • OC для маршрутизации на x86-64?

    shurshur
    @shurshur
    Bermut, если всё так сложно, то на любой системе придётся писать скрипты и мучиться с недостающим функционалом. Так что ещё вопрос, что будет лучше...
  • OC для маршрутизации на x86-64?

    shurshur
    @shurshur
    Взять Linux и на нём всё настроить. Ни один комбайн не умеет столько, сколько умеет полноценная система.
  • Где найти такой тип record SRV?

    shurshur
    @shurshur
    Руслан Федосеев, да, я когда начинал писать комментарий, хотел про него упомянуть но потом забыл. В каком-то смысле jabber пример даже лучше, потому что в отличие от AD это не один-единственный софт от одного производителя, а реальный базар многообразного софта, в котором, тем не менее, SRV реализуется практически всегда.
  • Как перенаправить вывод strace в tail?

    shurshur
    @shurshur
    Вы специально совсем не читаете вопрос пользователя? Ему не это нужно...
  • Где найти такой тип record SRV?

    shurshur
    @shurshur
    mayton2019, в реальном мире SRV мало кто поддерживает, потому что нельзя угадать, подумали ли об этом авторы конечного софта. Например, далеко не каждая почтовая программа догадывается, что бывает запись _imap._.tcp у домена. И ладно если это что-то для автонастройки, как в приведённом примере, а если бы это было что-то, что без SRV-записи не работало бы?

    Исключения, конечно, есть. Например, jabber-клиенты и jabber-серверы неплохо поддерживают SRV, потому что там указывается адрес сервера куда посылать сообщения на домен - нечто подобное MX для почты. Клиент или сервер, не поддерживающий SRV-записей, в мире jabber был бы не очень интересен, так как сервер jabber может находиться не на том же физическом сервере, куда указывает основная A или CNAME запись домена.

    А netflix, конечно же, не заинтересован публиковать в SRV-ззписях свою внутреннюю кухню.
  • Как реализовать вместо рандома очередь, 1, 2, 3, 4 и т.д.?

    shurshur
    @shurshur
    ld6666666666666, можно счётчик хранить в самом скрипте, в базе итд, ну а если это телеграм-бот есть довольно эффектное решение - брать update_id запроса или message_id сообщения и выводить "Да" если он делится на 9. Правда, в этом случае ротация будет общая на всех пользователей. Плюс возможны спецэффекты, если будут прилетать события и сообщения других типов. Если надо каждому пользователю свой счётчик то это не поможет.
  • Как правильно задать интервал для формулы a³+b³=c³+1?

    shurshur
    @shurshur
    Корень, я не зарегистрирован на dxdy.ru. И на производстве медалек никогда не работал :)
  • Как перебрать все подкаталоги рекурсивной функцией по заданному условию?

    shurshur
    @shurshur
    kkolorid, можно взять да и попробовать. Но вообще для таких операций не особо важно, будет она выполняться секунду или 10. Больше времени на написание и отладку уйдёт, чем на собственно поиск этих файлов.
  • В чëм сейчас пишут документацию?

    shurshur
    @shurshur
    Если кто не знает, TeX по мнению его автора надо читать как ГРЕЧЕСКОЕ слово.
  • Можно ли использовать цикл for и файл с массивами?

    shurshur
    @shurshur
    Кстати, называть модуль именем встроенного типа не очень разумно.
  • Почему расшаренный принтер не сканирует на втором пк?

    shurshur
    @shurshur
    Да, бывает стороннее ПО, как от производителей сканеров/МФУ, так и универсальное.
  • Возможно ли получить белый IP бесплатно?

    shurshur
    @shurshur
    Есть сервисы типа ngrok, которые позволяют сделать бесплатный проброс. Не супер удобно, зато дёшево и сердито.

    Если провайдер не даёт белого IP, проще держать виртуалку за 100-200 рублей и с неё VPN кидать до домашнего сервера. Заодно будет удалённый доступ домой. В том числе можно иметь виртуалку, ресурсов которой не хватит для тех самых ботов, но хватит для проксирования.
  • Как правильно передать данные?

    shurshur
    @shurshur
    Виктор Таран, я не разраб, я админ. Когда у тебя десятки серверов и регулярно появляются новые, причём у тебя также и десятки админов, которым нужно что-то иногда накатить/поменять, то разворачивание скриптиками превращается в кошмар.

    У нас уже давно есть куча ролей и тасков в ansible, которыми мы управляем инфраструктурой. Когда я пришёл в компанию, админ был всего один и у него конечно же было много скриптиков, которые позволяли удобно создавать/мигрировать зоны на Solaris 10 и ещё много чего сверх того :) Сейчас у нас отдел на 30 человек, из которых 2/3 неизбежно используют ansible (исключая сетевиков, DBA, офисных эникейщиков и начальника), потому что это удобно, надёжно и универсально.

    Вот, например, два таска в роли proxy:

    - name: set_fact nginx_proxy_ports
      set_fact:
        nginx_proxy_ports: { 2775, 2776, 5235, 8443, 4443, 4444, 4447, 5443, 6443, 7443, 9443, 9090, 6250, 6251, 6252, 6253 }
    
    - name: Set selinux ports for nginx
      seport:
        ports: "{{ item }}"
        proto: tcp
        setype: http_port_t
        state: present
        reload: yes
      with_items: "{{ nginx_proxy_ports }}"


    Сколько бы пришлось писать и отлаживать скрипт, который бы сделал то же самое? А ведь ansible не только это сделает хорошо, но также идемпотентно (ничего не сломает при повторном запуске) и корректно упадёт при любой ошибке без каких-либо специальных усилий по обработке ошибок.

    В этой роли 20 тасков, которые за 5 минут превращают свежеарендованную виртуалку в прокси-сервер с правильным конфигом и набором софта (nginx, squid, selinux, логи и logrotate, сертификаты итд). Отдельно у нас суперроль common на 118 правил, которые настраивают sshd, почтовый релей, sysctl, ulimits, selinux, sudo, ntp, logrotate, docker, предустанавливаемый обязательный софт итд итп. Есть роли для установки агента мониторинга, для деплоя нод кластеров kubernetes и mesos, для consul/keepalived/envoy/hdfs/elk... Только что с удивлением узнал, что даже виртуалки через ansible создаются на гипервизорах (нашёл роль vm_create). У нас даже пользователи и DNS через ansible раскатываются... (По пользователям давно обсуждается внедрение LDAP, но админов всё равно придётся иметь в ansible как минимум для внешних серверов, куда LDAP так просто не затянуть, а по DNS обсуждали и вяло тестировали powerdns, чтобы не файлами оперировать, и ни к чему так и не пришли пока, но кстати деплой powerdns через ansible уже есть).

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