Задать вопрос
  • Не могу настроить сетку Bootstrap 5. Где ошибка?

    delphinpro
    @delphinpro
    frontend developer
    Зачем привязка к бутстрапу, если на css вам хватит двух-трех строк кода для описания желаемого?

    мобильники - вообще ничего не делаете. Блоки и так уже идут в столбик.

    Дальше простой запрос

    @media (min-width: 768px) /* ширина по вашему хотению */ {
      .block {  
        display: grid;
        grid-template-columns: repeat(3, 1fr);
      }
      .yellow {
        grid-column: span 3;
      }
    }
    Ответ написан
    Комментировать
  • Как увеличить производительность проекта на python?

    все упирается в бд, на ум сразу пришло вынести эту часть в микросервис
    Какой ещё микросервис? Микросервис, который делает что?

    В-нулевых, нужно конкретизировать что значит "упирается в БД". Тормозят какие-то конкретные запросы? СУБД не хватает ресурсов? Слишком медленный диск? Или, может, под "упирается в БД" вы понимаете всю бизнес-логику приложения, которую вы называете "берет из бд нужные данные" (и тогда становится понятно про микросервис)?
    Во-первых, нужно вынести СУБД на отдельную машину, желательно на голое железо (если речь про реальный хайлоад, а не про кривой код и конфиги).
    В-третьих, под это железо нужно СУБД корректно сконфигурировать.
    В-четвёртых, нужно добавить кэширование.
    В-пятых, нужно проверить алгоритмы и пофиксить узкие места (на последнем месте, потому что это самое трудоёмкое).

    Я понимаю, что python и django не самые быстрые инструменты (мягко скажем)
    Я вас уверяю, что проблема в вашей компетенции (мягко скажем), а не в инструментах. Есть достаточно проектов, написанных на Джанго, которые вывозят большие нагрузки.
    Вы, в принципе, правильно сделали, что попытались поначалу закидать проблему железом - оно обычно дешевле, чем время разработчиков. Но параллельно надо и оптимизацией заниматься, и это требует системности, которой в вопросе не очень-то видно. Ну и компетенций разных - если тормозят алгоритмы - это одно, если конкретные SQL-запросы - это другое, если СУБД задыхается в принципе - это третье.
    Ответ написан
    5 комментариев
  • Как быть при утечке памяти? Можно ли "очистить" ОЗУ скриптом?

    saboteur_kiev
    @saboteur_kiev Куратор тега Windows
    software engineer
    Вы вообще не в ту сторону шагаете.Какие тут скрипты??

    Утечки памяти это не проблема операционной системы (ну разве что утечки именно в ней).

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

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

    Тут нужно разбираться с вашими приложениями, с теми кто их писал.
    Иначе - ну ребутать разросшиеся приложения регулярно, если этот вариант возможен.
    Ответ написан
    Комментировать
  • Какую видеокарту и материнскую плату выбрать для процессора Ryzen 7 5700x?

    я сейчас думаю о покупке видеокарты(бюджет +- 80к)

    Можно на эти деньги найти RTX 4070ti

    и материнской платы(+-20к)

    что-нибудь на B550 с нормальным питанием ищи, что будет у тебя в наличии.
    Обзоров достаточно.

    чтобы все было совместимо и было на одинаковом уровне если так можно сказать

    Что такое "одинаковый уровень"?
    Ответ написан
    Комментировать
  • Как правильно организовать выборку зашифрованных данных PostgreSQL?

    Melkij
    @Melkij
    DBA для вашего PostgreSQL?
    Никак.

    Ловите своих DBA, архитектора, безопасников, начальство и совместно вникаете, существует ли вообще вектор атаки, от которого вы так пытаетесь защититься.
    Один постоянный универсальный ключ шифрования зашитый в приложении и открыто передающийся по сети - это больше профанация чем безопасность. И хорошо ещё, если ключ не сохраняется в логах базы вовсе в открытом виде.

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

    Единственное возможное исключение: если ваша функция шифрования обязуется быть immutable в терминах postgresql, т.е. на один и тот же ключ и исходные данные генерировать всегда один и тот же бинарно идентичный результат. Тогда делаете индекс по parent_iin и ищете по условию where parent_iin = функция_шифрования(данные, ключ) то есть по зашифрованному представлению данных.
    Ответ написан
    Комментировать
  • Как решить ошибку Warning: mysqli_connect(): (HY000/2002): Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение?

    ipatiev
    @ipatiev Куратор тега PHP
    Потомок старинного рода Ипатьевых-Колотитьевых
    Перед тем, как пытаться подключиться к серверу MySQL, его надо запустить.
    Если вы понятия не имеете, что такое сервер MySQL, то ищите нужную кнопочку в своей панельке управления, которая за вас решает, какие программы вам нужны.
    Ответ написан
    Комментировать
  • Почему компьютеры не используют двоично-десятичный формат для вычислений?

    hint000
    @hint000
    у админа три руки
    Идея двоично-десятичного представления не нова. Как минимум, 60 лет назад (а вероятно, что и ещё раньше) она имела практическую реализацию, как в аппаратной части (например, на IBM System/360), так и на языке высокого уровня (Cobol, 65 лет назад). https://ru.wikipedia.org/wiki/Двоично-десятичный_код
    Поскольку Cobol до сих пор немножко жив (в США есть спрос на опытных программистов на Cobol, в основном в финансовом секторе), то при желании можете его использовать вместе с его реализацией двоично-десятичной арифметики.
    Но скорость вычислений может быть меньше на порядок по сравнению с двоичным кодированием.

    ради точных вычислений
    арифметика с плавающей точкой в принципе не может быть точной. Например, в вашей любимой десятичной системе вы не сможете точно записать 1/3, 1/6, 1/7, 1/9, 1/11, 1/12, 1/13, 1/14, 1/15,.. (вам для этого потребуется бесконечно много разрядов, так же как в двоичной системе для ваших примеров 2,1;3,4;45,9). Проблему можно решить арифметикой с рациональными числами, но это будет ещё на порядок медленнее даже по сравнению с двоично-десятичной арифметикой. Реализации (библиотеки) тоже существуют - можете их найти и использовать, если готовы ради точности потерять в скорости в 100, а то и в 1000 раз (иногда точность на самом деле настолько важна, спору нет, но таких задач мало). Кстати, сравните возможности арифметики рациональных чисел с возможностями длинной арифметики. :) Тут не всё так однозначно.
    https://ru.wikipedia.org/wiki/Длинная_арифметика

    В целом вопрос хороший в плане вашей любознательности.
    Ответ написан
  • Как ускорить поиск по бд MySQL?

    ipatiev
    @ipatiev
    Потомок старинного рода Ипатьевых-Колотитьевых
    Хотелось бы понять как можно ускорить поиск товаров в базе данных MySQL, когда приходится использовать большое количество Id категорий в in.


    Дело не в большом количестве, а в том, сколько уходит времени на поиск одной. Если у колонки нет индекса, то поиск любого количества будет медленным. А если есть индекс, то будет быстрым.

    Плюс непонятно, с чего вы решили, что проблема именно в in. Если у вас сто тыщ товаров, и все их надо отсортировать или сгруппировать, то проблема вообще не в in. А в той самой сортировке или группировке. И надо подбирать составной индекс специально под них.

    Чтобы ускорить поиск по бд MySQL, надо не писать на тостер глубокомысленные умозаключения про три джойна и сто тыщ товаров, а выполнить команду EXPLAIN и начинать тупить в её вывод. или по крайней мере привести его в своем вопросе, чтобы он стал предметным.
    Ответ написан
    3 комментария
  • При использовании ftruncate после сохранения файла fwrite появляются много NULL в начале строки, что сделать чтобы их там не было?

    SilenceOfWinter
    @SilenceOfWinter Куратор тега PHP
    та еще зажигалка...
    используй rewind() после ftruncate()
    Ответ написан
    Комментировать
  • Как обмениваться файлами с VPS с со строгими настройками безопасности?

    @Drno
    WinSCP пробуйте. раз так уж надо отключать зачем то вход по паролю
    И нет - обмен файлов не должен быть такой же простой как в "проводнике". это дыра огромная.
    Ответ написан
    Комментировать
  • Здравствуйте! На хосте fornex php сервер не передает данные в БД, хотя на локалке все работало отлично. Как это исправить?

    ipatiev
    @ipatiev Куратор тега PHP
    Потомок старинного рода Ипатьевых-Колотитьевых
    Чтобы попытаться стать РНР разработчиком (а не бабкой-гадалкой из соседнего ответа), надо открыть для себя волшебный мир отладки.
    И для начала научиться получать от РНР сообщения об ошибках.
    Во-первых, надо убедиться, что никакие ошибки не подавляются. Для этого в коде всегда должна быть строчка

    error_reporting(E_ALL);

    В-вторых, если для работы с БД используется mysqli, то не лишне добавить настройку ошибок и для неё.
    mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);

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

    ini_set('display_errors',1);

    На боевом - наоборот, выключаем вывод на экран и включаем вывод в лог
    ini_set('display_errors', 0);
    ini_set('log_errors', 1);

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

    @Tabletko
    никого не трогаю, починяю примус
    В спящем режиме система не выключается и оперативная память ещё работает.
    Ответ написан
    Комментировать
  • Переход с MD5 на SHA256 что нужно сделать чтобы работало)?

    delphinpro
    @delphinpro Куратор тега PHP
    frontend developer
    Решил сделать переход с MD5 на SHA256

    Первая ошибка.
    Переходить нужно сразу на password_hash
    На переходный период реализовать две системы аутентификации. Сначала пробуете по старой (md5), если неудача, то password_verify
    После удачной аутентификации хешируете пароль новым алгоритмом.
    Ответ написан
    Комментировать
  • Почему не могу закоммитить?

    sergey-kuznetsov
    @sergey-kuznetsov Куратор тега Git
    Автоматизатор
    первый раз работаю с git

    В первую очередь вам надо почитать учебник. Git это не та программа, с которой вы сходу можете начать работать. Он конечно простой, но вообще не интуитивно понятный.

    выдает 10000 файлов в каталоге

    Причина проста — вы инициализировали репозиторий находясь в корне вашего домашнего каталога. Нельзя так делать, если не хотите потерять свои файлы, бездумно вбивая команды типа stash.

    Что мне делать

    Удалить (или переименовать) подкаталог .git в котором хранится репозиторий. Затем создать его в правильном месте — в каталоге вашего проекта.
    Ответ написан
    Комментировать
  • Пытаюсь подключиться к postgresql 16 через docker-compose, использую spring-boot 3.2.4, что не так?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    То, что у вас в конфиге закомментировано - не просто так, а проверка работоспособности СУБД. Иначе оба контейнера стартуют одновременно и Постгрес не успевает подняться. То же самое без внешних скриптов реализуется с помощью depends_on + healthcheck.
    Ответ написан
    7 комментариев
  • Пытаюсь подключиться к postgresql 16 через docker-compose, использую spring-boot 3.2.4, что не так?

    @q2digger
    никого не трогаю, починяю примус
    подключаемся не к "db" , а к "psql" - по имени сервиса.
    Ответ написан
    1 комментарий
  • Какой SSL-сертификат лучше использовать для стэйджинга?

    Let`s Encrypt , очевидно. Я вообще не понимаю, кому сейчас нужны покупные сертификаты, кроме банков и подобных структур, где наличие покупного сертификата вписано в регулятивные правила отрасли.
    Ответ написан
    Комментировать
  • Как скрестить ElasticSearch и MySQL?

    mayton2019
    @mayton2019
    Bigdata Engineer
    В этом мало смысла потому как назначение Эластика - это делать быстрый поиск в не-структурированных
    (non-structured) данных таких как логи, дампы сетевого трафика или просто месседжи или текст.

    Назначение MySQL (процентов 99) это хранение реляционных данных. Тоесть данных где есть нормализация
    (1-2-3 НФ).

    И где... в какой части вы пересекаетесь - непонятно. Либо неправильно используется MySQL либо не там Эластик.
    Ответ написан
    2 комментария
  • Почему не получается объединить коммиты?

    sergey-kuznetsov
    @sergey-kuznetsov Куратор тега Git
    Автоматизатор
    Вы сами процитировали причину:

    Нельзя начать пересборку ветки (cannot rebase), пока есть незакоммиченные изменения в рабочем каталоге (You have unstaged changes).

    Гит будет пересоздавать заново коммиты, а для этого нужен свободный рабочий каталог, в который распаковываются промежуточные состояния проекта.

    Поэтому гит предлагает закоммитить или спрятать несохраненное (Please commit or stash them)

    Команда git stash по факту тоже создает коммит, но он не привязан ни к какой ветке и рабочий каталог становится чистым. Затем вы делаете свои нехорошие дела и восстанавливаете stash обратно в рабочий каталог.
    Ответ написан
    Комментировать