• Как создать свой образ Linux для размноживания на других АРМ?

    Adamos
    @Adamos
    чтобы не делать такую процедуру вновь

    Достаточно записать эту "процедуру" командами в preseed и на следующей подготовленной машинке просто запускать установку системы, скормив ей этот preseed-файл. Через полчаса без всяких вопросов к администратору система будет готова, причем со свежими пакетами.
    Если это требуется проделывать чаще раза в месяц - тогда лучше все-таки освоить оркестрацию, тот же Ansible.
    Ответ написан
    Комментировать
  • Django не могу правильно настроить шаблон?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Django
    Седой и строгий
    1. Прочитать документацию Django;
    2. Понять, что такое {% static %}, что он делает и зачем это нужно;
    3. PROFIT!

    Ещё можно заглянуть в консоль браузера, посмотреть какие ошибки там отображаются и при обращении по каким адресам они возникли.
    Ответ написан
    4 комментария
  • Как спрятать файлы через gitignore, чтобы заходя в мой репозиторий не видели файлы проекта но могли открыть проект (сайт) по ссылке?

    vhood
    @vhood
    Не забывайте отмечать решения
    Поскольку файлы уже отслеживались и есть в git, недостаточно добавить их в .gitignore, помимо этого нужно удалить их из git

    git rm --cached index.html

    Если сайт хостится через GitHub Pages, то как раз index.html из репозитория и считывается для этого. Если удалить index.html, никакой сайт никто не увидит. Хотите сделать сайт с закрытым кодом - храните код в приватном репозитории и показывайте через платный хостинг.
    Ответ написан
    3 комментария
  • Почему формы в Django нельзя упростить?

    @Everything_is_bad
    Ну напиши свой тег form, в чём проблема?
    ЗЫ не всем формам нужна кнопка submit, не всем формам нужен csrf_token, надо прописывать свои значения method и action, а часто еще класс и другие атрибуты. Всё это выносить в параметры? В итоге получим какого-то монстра.
    Ответ написан
    4 комментария
  • Astra Linux - как избавиться от шума в HDD?

    @rPman
    Якобы проблема в том, что разбивка жёсткого диска неверная, и там надо создать какие-то разделы для того чтобы hdd справлялся, а в данной ситуации он не вывозит и какая-либо деталь там западает или что-то в этом роде.
    либо вас обманули либо вы не так что то поняли или не договрили.

    нужно больше информации о том как именно разбили диски и какие файловые системы используются (и какой софт для записи видео), может там действительно что то страненое

    p.s. первое же видео со звуками типовых поломок hdd от гугла
    Ответ написан
    Комментировать
  • MacBook Air 13 M1 8/256, есть ли решение зависания терминала при подключении по SSH?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    У вас тут явно какие-то сетевые проблемы. Попробуйте подключиться кабелем. Так же рекомендую попробовать подключиться локально по SSH (к самому себе или к докеру/вируталке) и проверить, что это действительно сетевые проблемы, а не что-то с терминалом. И проверьте загруженность каналов вифи, а так же сам роутер. Так же я бы посмотрел на общую сетевую нагрузку - может там что-то где-то начинает качать?
    Ответ написан
    3 комментария
  • MacBook Air 13 M1 8/256, есть ли решение зависания терминала при подключении по SSH?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Сижу в iTerm на М2, ни разу ничего подобного не было. Похоже, действительно, на какую-то индивидуальную непереносимость сетевых устройств/канала.

    Правда, у меня стандартный шелл, без свистоперделок. Отключать последние пробовали?
    Ответ написан
    1 комментарий
  • С чем может быть связана высокая нагрузка на сервер Postgres?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Ну, так посмотрите статистику запросов, из неё станет понятно, что нагружает СУБД.

    Вот, например https://github.com/dataegret/pg-utils/blob/master/...
    Ответ написан
    6 комментариев
  • Psq восстановление бэкапа, что делаю не так?

    AshBlade
    @AshBlade
    Просто хочу быть счастливым
    Значит есть открытая сессия с этой БД. Закрой ее (например, pg_terminate_backend()) и повтори заново
    Ответ написан
    Комментировать
  • Macbook pro M1 2020 для разработки?

    xez
    @xez
    TL Junior Roo
    Подойдёт, если ОЗУ хотя бы 16гб будет (самый минимум).
    Лучше 32+
    Ответ написан
    1 комментарий
  • Как запитать sata ssd диск на плате промышленного компьютера ASEM BM3400?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    https://www.ozon.ru/product/karta-adapter-ssu-msat...
    А судя по описанию, с вашим компьютером в комплекте должны быть наборы для установки 2.5" SATA устройств.
    Ответ написан
    Комментировать
  • Как сделать что бы приложение не детектило Эмулятор GPS?

    GavriKos
    @GavriKos
    Как обеспечить защиту от детекта?

    Использовать аппаратные средства для фейкинга GPS.
    Ответ написан
    Комментировать
  • Бот дискорда падает в Rate limited, что делать?

    fenrir1121
    @fenrir1121 Куратор тега discord.py
    Начни с документации
    Давайте по порядку. В документации дискорда очень четко прописаны лимиты для вебсокета и чуть менее четко для HTTP. Цитировать оттуда не буду, думаю там все понятно.

    В общем виде ошибка 429 говорит, что в один из двух лимитов вы не укладываетесь. Чтобы не происходила ошибка можно перед выполнением действий проверять блокировку через AutoShardedClient.is_ws_ratelimited, но это не лечение проблемы, а только обработка.
    Для лечения нужно перехватывать ошибку в глобальном обработчике и по стеку вызовов смотреть на каком действии она происходит. Если приложите стектрейс к запросу, можно будет по нему сказать конкретнее. Только убедитесь чтобы логи не обрезались как у вас выше. Может быть и так было бы понятно, но эндпоинт https://discord.com/api/v10/channels/1215300998588... весь не видно. Учитывайте что она может и в разных когах происходить об этом ниже.

    В целом дискорд не любит, когда боты делают что-либо без явных действий пользователя. Причем чем больше бот, тем строже, поскольку для них это больше нагрузки. К примеру в коде, который вы приложили есть обновление статуса каждые 10 секунд. Будем объективны, пользователям плевать что у бота в статусе, но эти запросы так же идут в общий рейт лимит. Я бы советовал поставить или большое значение (5-10 минут) или вообще избавиться от этой карусели.
    Аналогично пройдите по остальному коду, который не приложен и посмотрите есть ли периодические запросы без явных команд: например обновления каких-нибудь сообщений по таймерам. Если есть увеличивайте таймеры в 2 раза (повторять до исправления) или подумайте как предоставлять функционал без этого.
    Ответ написан
    2 комментария
  • Что такое кластерный индекс в mysql?

    @Akina
    Сетевой и системный админ, SQL-программист.
    Кластерный индекс... это на самом деле понятие крайне виртуальное.

    Что такое обычный некластерный индекс? берём выражение индекса, считаем его значение для каждой записи, сортируем и пишем на диск. Получаем отдельную структуру, в которой выражение индекса сортировано. Когда потребуется искать заданное значение этого выражения, мы вместо просмотра от записи к записи сразу половинным делением быстренько найдём нужное значение, возьмём из него уникальный идентификатор записи, и обратимся за записью. Если в таблице 1000 записей, то для поиска заданного значения без индекса нам в среднем пришлось бы просмотреть 500 записей, а с индексом - всего 10.

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

    В MySQL (точнее, в используемом по умолчанию движке InnoDB) первичный индекс, во-первых, существует ВСЕГДА, во-вторых, определяется так (в статье, на которую дали ссылку, имеются неточности в пункте 2):
    1. Если первичный ключ задан явно, то его выражение является также и выражением кластерного индекса. Или иначе - первичный ключ и есть кластерный индекс.
    2. Если первичный ключ явно не задан, но в таблице имеется индекс, отвечающий всем следующим требованиям:
      • является уникальным
      • не является функциональным, в т.ч. не использует в выражении вычисляемые поля
      • не использует в выражении поля, которые определены как допускающие значение NULL

      то именно такой индекс используется в качестве первичного. А если таких индексов несколько, то используется первый по тексту запроса на создание таблицы
    3. Если не имеется ни того, ни другого - генерируется синтетический скрытый 6-байтовый номер записи, который и используется как первичный ключ. Следует отметить, что штатных способов доступа к этому значению не существует.


    Выглядит так, как будто это просто физическая сортировка данных по индексируемому полю.

    Фактически - именно так.

    Создаётся ли отдельная таблица или просто упорядочивается хранение существующих данных?

    Не создаётся. Но при изменении первичного индекса таблица полностью пересоздаётся с новым физическим порядком записей.

    Если данные упорядочиваются этим индексом, допустим по ID, то почему при select без сортировки данные могут возвращаться в произвольном порядке, а не отсортированные по ID по-умолчанию?

    Если не задан явно ORDER BY, сервер имеет право вернуть записи в любом порядке, как ему удобнее. В большинстве случаев, но не всегда, он будет возвращать записи в порядке чтения с диска...

    Представь такой (на самом деле невозможный, но не суть) случай - ты запросил таблицу. Вторая половина её ещё лежит в кэше, а первая уже выдавлена оттуда данными другой таблицы, нужными для выполнения запроса. Конечно, наиболее оптимальным будет начать передачу данных клиенту с этих записей, а пока они передаются, подчитать остальные, и передать их позже. Вот тебе порядок-то и поломался...

    ===

    PS. Кстати, правило выбора индекса, который будет использоваться в качестве кластерного, имеет неприятный побочный эффект. Если у некоторых полей, входящих в какие-то индексы, изменяется свойство NULLability, то это может привести к изменению того, какой из имеющихся индексов станет использоваться в качестве первичного по пункту 2. В результате мы получим невозможность использования INSTANT / INPLACE методов, и будет использован длинный COPY. Впрочем, ситуация такая крайне редка.
    Ответ написан
    2 комментария
  • Российское (реестровое) ПО для мониторинга инфраструктуры?

    @d-stream
    Готовые решения - не подаю, но...
    А взять и в реестр заглянуть - мешают религиозные убеждения?
    Я там увидел по 02.08 - 1350 записей
    Но мне это не нужно и подробнее я копать не буду)
    Ответ написан
    1 комментарий
  • Как программировать на машинных кодах?

    mindtester
    @mindtester
    http://iczin.su/hexagram_48
    контрольные вопросы (вам, отвечать сюда не обязательно, важнее самому себе):
    - сколько ассемблеров вы освоили?
    - на сколько свободно?
    - что такое макроассемблер?
    - что такое язык "B"?
    - как зародился язык "C"?
    - и что нового вы хотите изобрести?
    - для какого процессора?
    - для какого потребителя?
    ...
    PS... вы в курсе, что далеко не один язык позволяет вставки ассемблера?... и еще больше языков имеют специальные библиотеки для использования векторных команд, не говоря уже о библиотеках GPU
    Ответ написан
    Комментировать
  • Как программировать на машинных кодах?

    mayton2019
    @mayton2019
    Bigdata Engineer
    У меня есть идея, создать свой диалект ассемблера с простым синтаксисом, что бы на нем мог программировать любой человек, не проигрывая в скорости.

    Это очень наивная идея. Она была работоспособной в XX веке, когда система команд была простая и процессоры
    были однопоточные и без кешей и конвейеров и микро-кода (КР580, Z80...)

    Современный компиллятор знает больше чем обычный человек-разработчик. И очень мало людей в мире
    в состоянии писать машинный код думая одновременно
    1) О состоянии кешей
    2) О состоянии всех регистров
    3) О микрокоде и о загрузке конвейеров
    4) Об таймингах mmx, sse, avr командах и сравнивать их на ходу по скорости исполнения
    5) О прогнозировании переходов

    Современный компиллятор - видит глубоко и знает очень много. И очень сомнительно что
    человек, а тем более пишуший на новом языке да еще и в каких-то кодах может хоть
    близко подойти к этому пределу. Разумеется мы можем рассмотреть частные случаи
    когда человех перехитрил компиллятор, но промышленная разработка не состоит
    из таких кейсов.

    Обычный кейс - надо писать код.
    Надо писать МНОГО кода.
    Надо не делать ошибок.
    Надо гарантировать хорошую производительность этого кода.
    Ответ написан
    Комментировать
  • Как сделать так, чтобы при регистрации пользователя в телеграмм боте его ID сохранялся в файле только один раз?

    @max22765t
    Чтобы сохранялся один раз нужно проверять:
    :есть ли в файле такой id
    :если есть то мы ничего не делаем или пишем: "Такой id уже зарегестрирован"
    : если нет то вписываем

    пример:
    id = "id"
    
    file = open("yourFile.txt", "r")
    fileReaded = file.read()
    file.close()
    
    if id in fileReaded:
        print("Пользователь по етому id уже зарегестрирован!")
    else:
        file = open("yourFile.txt", "a")
        file.write("id")
        file.close()
    Ответ написан
    3 комментария
  • Как сделать так, чтобы при регистрации пользователя в телеграмм боте его ID сохранялся в файле только один раз?

    AshBlade
    @AshBlade
    Просто хочу быть счастливым
    использовать SQlite (поддержка которого встроена в питон) + индексы навесить на ID пользователя
    Ответ написан
    2 комментария
  • На какие нагрузки рассчитан диск NAS версии?

    Melkij
    @Melkij
    PostgreSQL DBA
    Расходник же.

    Укладывается в требуемое от него время работы? Значит хорошо. (например, я не уверен, что SMR диски будут успевать писать 8тб в сутки)
    Помер на гарантии - поменяете. У HDD в гарантии пока нет ограничения на TBW. Помер после гарантии - что ж, покупаете новый.
    Ответ написан
    Комментировать