- Значение, содержащееся в IN в инструкции SQL, не должно быть слишком большим
- В операторе SELECT нужно указывать имя полей
- Используйте LIMIT для ограничения количества записей
- Используйте индексы на фильтрующие поля запроса
- По надобности, используйте принудительное использование индекса (FORCE INDEX) для ускорения запроса
- Измените настройки используемой СУБД для увеличения используемых аппаратных ресурсов
- Во время запроса используйте нужный JOIN для более быстрого выполнения запроса
- Старайтесь не использовать подзапросы
- Используйте нормализацию и денормализацию структуры базы данных. Нормализация уменьшает избыточность данных, а денормализация позволяет уменьшить количество JOIN операций
- Разделите нагрузку между несколькими серверами, чтобы улучшить производительность и обеспечить масштабируемость. Используйте репликацию для распределения чтения между несколькими серверами, а также шардирование для распределения данных по нескольким базам данных
10 способов оптимизации SQL запросов
Разница грейдов Junior, Middle, Senior
Для себя выработал следующие критерии уровня разработчика:
- Junior. Надо объяснять как делать задачу, контролировать выполнение, внимательно следить что он делает, обучать.
- Middle. Уже может сам понять задачу и выполнить её. Может сам разработать отдельный элемент системы или часть приложения. Middle уже учится сам.
- Senior. Может поговорить с бизнесом, понять что ему надо, спроектировать системное решение и сам целиком его реализовать. Если он не знает какую-то технологию, то может сам разобраться, обучиться или найти того кто знает.
Что такое ORM
ORM (Object Relational Mapping) — это техника, которая связывает полноценные объекты языка программирования с таблицами в реляционной системе управления базами данных.
С помощью ORM можно манипулировать данными в базе данных через объекты, не прибегая к написанию SQL-запросов вручную. Это достигается за счет автоматического преобразования объектов в строки таблиц базы данных и обратно. Такой подход не только упрощает работу с данными в объектно-ориентированных системах, но и позволяет взаимодействовать с ними на более интуитивном уровне благодаря повышению абстракции.
Читать далееИсправление ошибки could not load «libtss2-tcti-tabrmd.so.0»
Иногда при работе с генерацией сертификатов могут возникнуть ошибки, что не хватает какой-либо библиотеки. В этой статье рассказывается как победить эту ошибку TPM 2.0 - could not load "libtss2-tcti-tabrmd.so.0".
Eloquent разница метода attach и sync
Laravel упрощает управление базами данных, особенно при работе с отношениями Many-to-Many («многие ко многим»). Framework предлагает методы attach() и sync(), которые упрощают процесс управления отношениями между связанными сущностями. В этой статье мы рассмотрим функциональные возможности, различия и best practies методов attach() и sync() в контексте отношений Many-to-Many («многие ко многим») в Laravel.