METANIT.COM
6.24K subscribers
1.79K photos
86 videos
10 files
1.26K links
Канал о программировании и разработке сайта metanit.com
Download Telegram
Шпаргалка по массивам в языке Java #java
Шпаргалка по работе с файлами в языке С
👍7🥰1👏1
Git и GitHub — популярные инструменты для контроля версий.
Некоторые различия:

1 - Git - это бесплатный инструмент управления версиями с открытым исходным кодом. GitHub - это облачный платный сервис, который запускает Git в облаке.
2 - Git устанавливается локально на машине разработчика. GitHub размещается в облаке.
3 — Linux Foundation поддерживает Git. Microsoft владеет GitHub.
4 - Git может управлять различными версиями правок, внесенных в файлы в репозитории git. GitHub — это пространство для загрузки копии репозитория Git.
5 - Git поддерживает контроль версий и управление исходным кодом. GitHub можно использовать для хостинга кода, совместной работы и управления проектами.
6 - Git имеет минимальную внешнюю конфигурацию инструментов. GitHub предоставляет активную площадку для интеграции инструментов.
Наконец, можно использовать Git без GitHub, но нельзя использовать GitHub без Git.
12😐8👍3👏1
Шпаргалка по транзакциям базы данных #sql
👍4🔥2👏1
Основные стратегии для улучшения производительности базы данных:

1 - Индексация базы данных
Индексы важны для ускорения запросов к базе данных за счет сокращения объема сканируемых данных. Кроме того, выбор правильного типа индекса имеет решающее значение

2 - Шардинг и разбиение на разделы
Разделите данные на более мелкие, более управляемые фрагменты, известные как шарды. Каждый шард также хранится на отдельном сервере

3 - Денормализация
Денормализация объединяет данные в меньшее количество таблиц, чтобы сократить накладные расходы на соединения и повысить производительность чтения

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

5 - Методы блокировки базы данных
Используйте методы блокировки, такие как пессимистическая и оптимистическая блокировка, для управления уровнями параллелизма и конкуренцией за ресурсы
🔥7
В Positive Technologies начались массовые сокращения ИТ-шников
По сообщениям сотрудников Positive Technologies, с конца 2024 г. года в компании идут массовые увольнения. ИТ-шникам предлагают уйти по собственному желанию, несогласным выплачивают оклады. Кулуарно происходящее объясняют недостижением показателей. При этом по итогам 2023 г. выручка компании достигла 22,2 млрд руб.
Увольнения касаются разработчиков, программистов, тестировщиков и других специалистов. «В первую очередь убирают мидлов, и тех, чьи проекты закрываются или объединяются», - пояснили сотрудники.
https://www.cnews.ru/news/top/2025-02-02_v_krupnoj_ib-kompanii_s_milliardnoj
😱5👍3
Шпаргалка по веб-серверу Nginx #nginx
11👏2🥰1
Советы по повышению производительности интерфейса:

1 - Сжатие
Сжимайте файлы и минимизируйте размер данных перед передачей, чтобы снизить нагрузку на сеть

2 - Выборочный рендеринг
Отображайте только видимые элементы для оптимизации производительности рендеринга. Например, в динамическом списке отображайте только видимые элементы

3 — Модульная архитектура с разделением кода
Разделите большие файлы на несколько меньших файлов для эффективной загрузки

4 - Загрузка на основе приоритета
Отдайте приоритет важным ресурсам и контенту в области видимости

5 - Предварительная загрузка
Для повышения скорости загрузки извлекайте ресурсы, до того, как они будут запрошены

6 - Tree Shaking (удаление неиспользуемого кода)
Оптимизируйте набор файлов JS, удалив не используемый код

7 - Предварительная выборка
Заранее извлекайте или кэшируйте ресурсы, которые понадобятся позже

8 - Динамический импорт
Динамическая загрузка модулей на основе действий пользователя для оптимизации начального времени загрузки
👍4🥰1👏1
План запроса — это последовательность шагов для доступа к данным в базе данных SQL. Каждый SQL-запрос, отправляемый в базу данных, преобразуется в план запроса.
Процесс выглядит примерно следующим образом:

• Анализ SQL
• Оптимизация SQL
• Выходной план запроса

Важнейшим компонентом этого процесса является оптимизатор запросов. Он отвечает за поиск в возможном пространстве плана запроса и нахождение оптимального плана запроса.
В оптимизаторе запросов, основанном на стоимости, каждый план запроса имеет соответствующую стоимость. Лучший план запроса — это тот, который имеет наименьшую стоимость.
Еще одна оптимизация, которую выполняют SQL-движки, — кэширование часто используемых планов запросов. Важно писать запросы так, чтобы их можно было кэшировать. Например, запрос с параметрами можно кэшировать, а план запроса использовать повторно.
#sql
👍142🔥2
Наиболее применяемые команды Git для повседневного использования #git
🙏13👏4🔥3
5 распространенных стратегий кэширования:

1. 𝐑𝐞𝐚𝐝 𝐓𝐡𝐫𝐨𝐮𝐠𝐡 : Приложение всегда сначала запрашивает кэш. Если данные отсутствуют в кэше, кэш сам извлекает их из базы данных и сохраняет для будущих запросов

2. 𝐂𝐚𝐜𝐡𝐞 𝐀𝐬𝐢𝐝𝐞 ( 𝐋𝐚𝐳𝐲 𝐋𝐨𝐚𝐝𝐢𝐧𝐠): Приложение сначала проверяет кэш. Если данные не найдены в кэше, извлекает данные из БД и сохраняет в кэше для последующих запросов.

3. 𝐖𝐫𝐢𝐭𝐞 𝐓𝐡𝐫𝐨𝐮𝐠𝐡 : Каждая операция записи сначала сохраняется в кэше, а затем немедленно записывается в БД

4. 𝐖𝐫𝐢𝐭𝐞 𝐀𝐫𝐨𝐮𝐧𝐝 : Приложение напрямую пишет в базу данных, минуя кэш. Кэш обновляется только при запросе на чтение.

5. 𝐖𝐫𝐢𝐭𝐞 𝐁𝐚𝐜𝐤 : Данные сначала записываются в кэш, а кэш асинхронно обновляет БД в фоновом режиме

Какую стратегию использовать?
- Если чтения происходят чаще → Read-Through / Cache-Aside
- Если записи должны быть последовательными → Write-Through
- Если надо минимизировать ненужное кэширование → Write-Around
- Если нужна сверхбыстрая запись → Write-Back
👍5🔥1👏1