python and some backend notes(ru)
108 subscribers
5 photos
1 file
192 links
Личные заметки и ссылки на статьи по python и backend вопросам, но может кому-то тоже будет интересно
Download Telegram
11 типов современных баз данных: краткие описания, схемы и примеры БД

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

https://telegra.ph/11-tipov-sovremennyh-baz-dannyh-kratkie-opisaniya-shemy-i-primery-BD-01-05

#ит_статьи #types_of_databases #sql #nosql
Forwarded from Data Science. SQL hub
⚡️ Для чего использовать Redis?

Redis - это отличный инструмент, он надежен и прост в использовании (при правильном использовании).

Вот 5 примеров использования Redis:

1. Кэширование

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

2. Хранение сессий

Redis подходит для обмена данными пользовательских сессий между серверами без статических данных. Redis предоставляет централизованное место для хранения данных сеансов и позволяет легко масштабировать серверы.

3. Распределенная блокировка

Импользование- распределенной блокировки Redis для предоставления взаимоисключающего доступа к общим ресурсам. Это предотвращает возникновение ситуаций гонки в распределенных системах. Блокировки Redis просты в реализации и автоматически истекают.

4. Счетчик и ограничитель скорости

Redis подходит для отслеживания количества лайков, просмотров и т. д. в приложениях для социальных сетей. Счетчики Redis обеспечивают атомарное увеличение/уменьшение. Redis также используется для ограничения скорости на эндпоинтах API.

5. Таблицы лидеров (Лидерборды)

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

📌 Примеры с кодом

@sqlhub
Forwarded from DevOps
🖥 5 советов, как ускорить сборку образа Docker

Совет 1. Можно ли избежать создания образов?

Использование Docker не обязательно должно быть принципом «все или ничего». Вы можете использовать Docker для развертывания и создания образов для продакшн, но вам не обязательно использовать его в разработке.


Совет 2. Структурируйте инструкции Dockerfile как перевернутую пирамиду.

Каждая инструкция в вашем Dockerfile приводит к созданию слоя изображения. Docker использует слои для повторного использования работы. Слои кэшируются и их не нужно пересобирать, если:
— Все предыдущие слои не изменяются.
— В случае инструкции COPY: файлы/папки не изменяются.
— В случае всех остальных инструкций: текст команды не изменяется.


Совет 3. Копируйте только те файлы, которые необходимы для следующего шага.

Представьте, что у нас есть следующий фрагмент Dockerfile:
RUN mkdir /code
COPY code code/
RUN pip install code/requirements.txt

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

Вот как мы могли бы избежать повторного запуска этапа установки при каждом изменении кода:
RUN mkdir /code
COPY code/requirements.txt code/
RUN pip install code/requirements.txt
COPY code /code



Совет 4. Скачивайте меньше файлов.

Во-первых, проверьте, не загружаете ли вы зависимости разработки, которые вообще не нужны вашему образу.

Ещё нужно помнить про поведение менеджера пакетов на уровне ОС. Например, `apt`который используется в Ubuntu и Debian, по умолчанию устанавливает «рекомендуемые» пакеты.
Вы можете избежать этого, добавив к apt-get install флаг --no-install-recommends


Совет 5. Используйте BuildKit с новой функцией монтирования кэша.

BuildKit — это новый механизм сборки образов, который можно использовать вместо стандартного Docker. С ним вы получаете больше параллелизма и эффективности кэширования, плюс новые интересные функции

📎 Читать подробнее

@DevOPSitsec
Please open Telegram to view this post
VIEW IN TELEGRAM
Статья о операторе ~ - https://blog.finxter.com/tilde-python/

#tilde #operators