Обновить
22
0

Пользователь

Отправить сообщение

Как работает HTTP/2 и как использовать его в Go

Уровень сложностиПростой
Время на прочтение12 мин
Охват и читатели4.5K

HTTP/2 – это значительное обновление по сравнению с HTTP/1.1, решающее его ключевые ограничения, такие как блокировка Head-of-Line (HoL) и неэффективность многократных соединений. В этой статье мы разберёмся, почему HTTP/2 стал стандартом, как он устроен и чем отличается от предыдущей версии протокола. Мы рассмотрим ключевые концепции HTTP/2: мультиплексирование, сжатие заголовков HPACK, бинарный формат фреймов и серверный push.

Во второй части статьи мы покажем, как включить HTTP/2 в Go-приложениях. Вы узнаете, как правильно настроить HTTP-сервер с поддержкой TLS и ALPN, какие пакеты использовать и какие нюансы учитывать при разработке. Также мы обсудим практические аспекты работы с HTTP/2, возможные проблемы и пути их решения.

Читать далее

Как работает сеть в контейнерах: Docker Bridge с нуля

Уровень сложностиСредний
Время на прочтение21 мин
Охват и читатели85K

В этой статье мы собираемся разобраться со следующими вопросами:

* Как виртуализировать сетевые ресурсы, чтобы контейнеры думали, что у них есть отдельные сетевые среды?

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

* Как выйти во внешний мир (например, в Интернет) изнутри контейнера?

* Как связаться с контейнерами, работающими на хосте Linux, из внешнего мира?

* Как реализовать публикацию портов, подобную Docker?

Читать далее

Новый способ прослушивания событий жизненного цикла приложения во Flutter

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели5.6K

Обзор нового класса AppLifecycleListener, представленного во Flutter 3.13

Во Flutter 3.13 появилось множество новых функций и улучшений. Одним из них является новый класс под названием AppLifecycleListener, который позволяет прослушивать события жизненного цикла приложения на Flutter. Это улучшение по сравнению с предыдущим способом. В этой статье я сравню старые и новые способы прослушивания событий жизненного цикла приложения и покажу вам, как использовать новый класс AppLifecycleListener.

Читать далее

Асинхронные задачи с FastAPI и Celery

Уровень сложностиПростой
Время на прочтение10 мин
Охват и читатели44K

Если в приложении есть длительные процессы, то вместо того, чтобы блокировать основной поток, вы должны обрабатывать их в фоновом режиме.

Чтобы достичь этого, мы расскажем вам о процессе настройки Celery и Redis для обработки длительно выполняющихся процессов в приложении FastAPI. Мы также будем использовать Docker и Docker Compose, чтобы связать все воедино. Наконец, мы рассмотрим, как протестировать задачи Celery с помощью модульных (unit) и интеграционных тестов.

Читать далее

Все о фабричном конструкторе в Dart

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели11K

Изучив классы фреймворка, пакеты сторонних разработчиков или документацию Dart / Flutter, вы, натыкались на ключевое слово factory и задавались вопросом, что это значит.

В этой статье мы собираемся прояснить:

Значение ключевого слова

Когда вам следует его использовать

Разница между factory и порождающим конструктором

Различия между factory и static

Читать далее

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность