Чему вы научитесь
- Создавать связанные процессы и обмениваться данными через socketpair и Unix domain socket
- Проектировать протокол обмена: JSON-контракт и сообщения с префиксом длины
- Обрабатывать частичное чтение и склейку данных: понимать, почему один recv не равен одному сообщению
- Писать последовательный, многопоточный и асинхронный (asyncio) серверы
- Реализовывать клиента с correlation ID, тайм-аутами и отменой запросов
- Защищать сервис: backpressure, ограничения протокола, обработка broken pipe
- Настраивать путь сокета, права и жизненный цикл сервиса
- Выбирать подходящий способ IPC под конкретную архитектурную задачу
О курсе
Практический курс по межпроцессному взаимодействию в Python. Шаг за шагом строим сервис-калькулятор на Unix domain socket: от socketpair и протокола сообщений до асинхронного сервера на asyncio, тайм-аутов, защиты и production-сборки.
Для кого этот курс
Python-разработчикам, которые уже пишут код и хотят понять, как устроено взаимодействие между процессами
Начинающим backend-разработчикам, которым нужно разобраться в сокетах, протоколах и сетевых серверах
Тем, кто готовится к техническим собеседованиям по темам сокетов, конкурентности и asyncio
Разработчикам, которые хотят перейти от копирования готового кода к самостоятельному проектированию сервисов
Начальные требования
- Уверенное знание основ Python: функции, классы, исключения, работа с файлами и модулями.
- Умение запускать скрипты из терминала.
- Linux или macOS (либо WSL): курс использует Unix domain socket.
Преподаватели курса
Как проходит обучение
Курс состоит из 15 уроков в 6 модулях. Каждый урок добавляет новую возможность в сквозной проект — вы пишете код, запускаете его и проверяете себя тестами и практическими заданиями. Проходите в своём темпе, уроки идут по нарастающей сложности, поэтому лучше двигаться по порядку.