🤔 Что такое garbage collector?
Garbage collector (сборщик мусора) — это механизм, который освобождает память от объектов, которые уже не используются. В Python он работает совместно с системой подсчёта ссылок, дополнительно удаляя объекты с взаимными ссылками, которые не доступны извне (циклические зависимости).
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
Garbage collector (сборщик мусора) — это механизм, который освобождает память от объектов, которые уже не используются. В Python он работает совместно с системой подсчёта ссылок, дополнительно удаляя объекты с взаимными ссылками, которые не доступны извне (циклические зависимости).
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
👍1🔥1
🤔 Что такое Host?
Host (хост) — это устройство или сервер, подключённый к сети, который может предоставлять или запрашивать данные.
🚩Где используется `Host`?
🟠В HTTP-запросах (заголовок `Host`)
Когда браузер запрашивает сайт, он отправляет заголовок
🟠В настройке DNS и доменных имён
Host — это доменное имя, привязанное к IP-адресу.
-
-
🟠3. В локальной сети (локальные хосты)
Внутри сети устройства тоже считаются хостами (
Ставь 👍 и забирай 📚 Базу знаний
Host (хост) — это устройство или сервер, подключённый к сети, который может предоставлять или запрашивать данные.
GET /index.html HTTP/1.1
Host: example.com
🚩Где используется `Host`?
🟠В HTTP-запросах (заголовок `Host`)
Когда браузер запрашивает сайт, он отправляет заголовок
Host, чтобы сервер знал, какой сайт нужно отдать. GET / HTTP/1.1
Host: google.com
User-Agent: Mozilla/5.0
🟠В настройке DNS и доменных имён
Host — это доменное имя, привязанное к IP-адресу.
-
example.com → 192.168.1.100 -
mail.example.com → 192.168.1.101 127.0.0.1 mysite.local
🟠3. В локальной сети (локальные хосты)
Внутри сети устройства тоже считаются хостами (
192.168.1.10, 192.168.1.20). localhost (127.0.0.1) — это всегда локальный компьютер.Ставь 👍 и забирай 📚 Базу знаний
🔥2👍1
🤔 Что такое ветка в GIT?
Ветка — это указатель на одну из версий истории. Позволяет работать над отдельными фичами, багфиксами и экспериментами, не затрагивая основную ветку. Это основа для параллельной разработки и коллаборации.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
Ветка — это указатель на одну из версий истории. Позволяет работать над отдельными фичами, багфиксами и экспериментами, не затрагивая основную ветку. Это основа для параллельной разработки и коллаборации.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
👍3
🤔 Для чего нужны библиотеки sqlparse, asgiref в Django?
Django использует
🟠`sqlparse` – разбор SQL-запросов
🚩Где используется в Django?
Форматирование SQL-запросов в
Логирование SQL-запросов
Команда
🟠`asgiref` – асинхронность в Django
🚩Где используется в Django?
🟠Поддержка ASGI
Django с версии 3.0 поддерживает асинхронные вьюхи, WebSockets и асинхронные базы данных (например, с
В
🟠Асинхронные middleware
Django 4.x поддерживает асинхронные middleware через
🟠Преобразование `async` → `sync` и наоборот
Django использует
🟠Локальное хранилище для асинхронных задач (`asgiref.local.Local`)
Позволяет хранить данные отдельно для каждого потока или запроса.
Ставь 👍 и забирай 📚 Базу знаний
Django использует
sqlparse и asgiref как вспомогательные библиотеки для работы с SQL и асинхронностью. Разберём их назначение подробно. 🟠`sqlparse` – разбор SQL-запросов
sqlparse (SQL Parser) — это библиотека для анализа, форматирования и обработки SQL-запросов. В Django она используется в админке, логах и отладке ORM. 🚩Где используется в Django?
Форматирование SQL-запросов в
django.db.connection.queriesfrom django.db import connection
from sqlparse import format
queries = connection.queries # Получаем список SQL-запросов
for q in queries:
print(format(q["sql"], reindent=True, keyword_case="upper")) # Красивый SQL
Логирование SQL-запросов
sqlparse помогает Django красиво выводить SQL-запросы в DEBUG=True.Команда
sqlmigratepython manage.py sqlmigrate app_name 0001
🟠`asgiref` – асинхронность в Django
asgiref (Asynchronous Server Gateway Interface Reference) — это библиотека, которая помогает Django работать в асинхронном (async) режиме. Django поддерживает ASGI с версии 3.0, и asgiref — это её обязательная зависимость.🚩Где используется в Django?
🟠Поддержка ASGI
Django с версии 3.0 поддерживает асинхронные вьюхи, WebSockets и асинхронные базы данных (например, с
asyncpg).В
settings.py есть параметр:ASGI_APPLICATION = "myproject.asgi.application"
🟠Асинхронные middleware
Django 4.x поддерживает асинхронные middleware через
asgiref.sync и asgiref.local.🟠Преобразование `async` → `sync` и наоборот
Django использует
sync_to_async() и async_to_sync() из asgiref:from asgiref.sync import sync_to_async
def sync_function():
return "Hello from sync!"
async_function = sync_to_async(sync_function)
print(async_function()) # Вызывает синхронную функцию в асинхронном коде
🟠Локальное хранилище для асинхронных задач (`asgiref.local.Local`)
Позволяет хранить данные отдельно для каждого потока или запроса.
Ставь 👍 и забирай 📚 Базу знаний
👍3