Найти в Дзене
Эволюция протокола HTTP: от последовательной передачи к QUIC и HTTP/3.
Как погоня за скоростью изменила фундаментальный протокол интернета. Мы проследим путь развития HTTP, протокола, лежащего в основе веба. Каждый шаг в его эволюции - это ответ на растущие требования к скорости, эффективности и безопасности. Это история о решении одних проблем, которые неизбежно приводили к появлению новых, более сложных вызовов. Протокол HTTP (Hypertext Transfer Protocol) прошел путь от механизма передачи простых гипертекстовых документов до статуса «магистрали веба», обеспечивающей функционирование сложных API, видеостриминга и облачных микросервисов...
2 месяца назад
Контекстные менеджеры в Python
Контекстные менеджеры в Python - это объекты, которые позволяют управлять контекстом выполнения блока кода. Они используются с оператором with и имеют два специальных метода: __enter__ и __exit__. Метод __enter__ вызывается при входе в блок with и может возвращать значение, которое присваивается переменной после ключевого слова as. Метод __exit__ вызывается при выходе из блока with и получает три аргумента: тип исключения, само исключение и трассировку стека. Пример использования контекстного менеджера...
3 года назад
Конструкция yield from в Python
Введение Конструкция yield from используется для делегирования работы другому генератору. Она позволяет «вкладывать» один генератор в другой, то есть создавать субгенераторы. Это позволяет упростить код и избежать лишних циклов. Сравнение for + yield с yield from В самом простом случае, выражение yield from iterable - это просто сокращенная форма for item in iterable: yield item. Пример: Использование yield from с range Еще один пример использования yield from: Обход узлов бинарного дерева Конструкция yield from также может оказаться полезной при обходе узлов бинарного дерева...
294 читали · 3 года назад
Использование memoryview в Python
Класс memoryview в Python позволяет получать прямой доступ к внутренним данным объекта, который поддерживает протокол буфера обмена, без копирования. Это может быть полезно для работы с большими массивами данных или бинарными файлами. Пример 1. Байтовый массив Пример использования класса memoryview с байтовым массивом: Пример 2. Срезы Вы также можете использовать срезы при работе с memoryview. Для того, чтобы создать срез из объекта memoryview, вам сначала потребуется создать объект memoryview, который охватывает весь исходный массив...
3 года назад
Что такое ACID?
ACID - это набор из четырех требований к транзакционной системе, обеспечивающих максимально надежную и предсказуемую работу. Не все базы данных полностью реализуют ACID. Атомарность (atomicity) Атомарность гарантирует, что каждая транзакция будет выполнена полностью или не будет выполнена совсем. Не допускаются промежуточные состояния. Например, если вы переводите деньги с одного счета на другой, то атомарность гарантирует, что либо оба счета будут изменены соответственно, либо ни один из них не будет изменен...
3 года назад
Если нравится — подпишитесь
Так вы не пропустите новые публикации этого канала