Silen
Администратор
- Регистрация
- 3 Дек 2015
- Сообщения
- 190.889
- Реакции
- 756.159
Складчина: Продвинутое проектирование API в Ruby on Rails [Thinknetica] [Александр Норов] [Тариф Слушатель]
Этот воркшоп для вас, если:
API начал «задыхаться» под нагрузкой
Проект вырос, пользователей стало больше, и теперь вы регулярно видите таймауты, 502-е ошибки и жалобы от клиентов.
Кэширование сделано фрагментарно, rate limiting отсутствует или работает криво, а один упавший микросервис роняет всё остальное.
Вы понимаете, что нужно что-то менять, но не знаете, с чего начать и как сделать правильно.
Готовитесь к Senior-позиции или уже на ней, но чувствуете пробелы в архитектуре
На собеседованиях спрашивают про Circuit Breaker, CAP-теорему и distributed rate limiting, а вы отвечаете по верхам из статей.
Вы уже Senior, но архитектурные решения принимаете интуитивно, без понимания trade-offs. Хочется системных знаний, а не набора хаков из Stack Overflow.
Команда переходит от монолита к микросервисам
Монолит распилили на сервисы, но вместо упрощения получили распределённый хаос.
Непонятно, как организовать единую точку входа, как обеспечить отказоустойчивость, как отлаживать запросы, которые проходят через пять сервисов.
Логи превратились в кашу, а на каждый инцидент уходит полдня расследований.
Строите публичный API для партнёров или клиентов
Нужно сделать API, которым будут пользоваться внешние разработчики, а значит: продуманная аутентификация, rate limiting по тарифам, версионирование без боли, понятные ошибки и документация.
Вы смотрите на Stripe и GitHub и хотите понять, как они это делают.
Программа воркшопа
День 1. API Gateway паттерны и архитектура микросервисов
Начнем воркшоп с разбора API Gateway как архитектурного паттерна: когда он нужен, а когда это overengineering. Изучим паттерны маршрутизации, Backend for Frontend и агрегацию запросов. Погрузимся в resilience patterns - Circuit Breaker, Retry с exponential backoff, Bulkheads - которые спасают от каскадных сбоев.
На практике построим собственный API Gateway на Rack с нуля.
Результат:
Поймете, когда использовать API Gateway, а когда достаточно простого reverse proxy
Научитесь реализовывать Circuit Breaker с помощью Semian для защиты от каскадных сбоев
Сможете спроектировать BFF для разных клиентов (web, mobile)
День 2. Rate Limiting, безопасность и управление доступом
На второй день разберем алгоритмы rate limiting - Fixed Window, Sliding Window, Token Bucket - и научимся выбирать подходящий под задачу. Изучим distributed rate limiting на Redis с Lua-скриптами для атомарности. Сравним подходы к аутентификации: API Keys, JWT, Opaque Tokens, OAuth 2.0.
На практике реализуем Token Bucket, бизнес-тарифы с разными лимитами и JWT с refresh tokens.
Результат:
Поймете trade-offs разных алгоритмов rate limiting и можете обосновать выбор
Сможете реализовывать distributed rate limiting без race conditions
Разберетесь, когда использовать JWT, а когда лучше API Keys или opaque tokens
Научитесь самостоятельно выстраивать систему тарифов с разными лимитами для разных клиентов
День 3. Кэширование, наблюдаемость и оптимизация
В заключительный день изучим продвинутые стратегии кэширования: multi-layer (CDN → Redis → In-memory), Russian Doll caching, cache stampede prevention. Разберем паттерны инвалидации - TTL, event-based, tag-based - и их trade-offs. Погрузимся в observability: distributed tracing, structured logging, Golden Signals, SLI/SLO.
На практике построим multi-layer cache с warming и tag-based инвалидацией, а также настроим correlation для логов и организуем сбор метрик.
Результат:
Научитесь проектировать многоуровневое кэширование и выбирать стратегию инвалидации
Поймете, как предотвратить cache stampede и поддерживать warm cache
Сможете настроить structured logging и distributed tracing для микросервисов
Будете знать, какие метрики собирать и как построить actionable-алерты
Что получите по итогу:
Набор готовых production-tested решений для типичных проблем роста. Сможете формулировать технические требования и оценивать предложения команды.
Фреймворк для принятия архитектурных решений: какой алгоритм rate limiting выбрать под конкретную задачу, когда использовать JWT vs opaque tokens.
Сможете внедрить multi-layer caching, distributed rate limiting и proper observability без изобретения велосипедов.
Поймете, когда API Gateway действительно нужен, а когда это overengineering.
Освоите resilience patterns (circuit breakers, bulkheads, timeouts), которые предотвращают каскадные сбои.
Научитесь строить observability, без которой микросервисы превращаются в кошмар. Поймете как выстроить SLI/SLO для API.
Александр Норов
Senior Software Engineer в Advenias S.r.l. (Zucchetti Group)
СКАЧАТЬ СЛИВ КУРСА
Этот воркшоп для вас, если:
API начал «задыхаться» под нагрузкой
Проект вырос, пользователей стало больше, и теперь вы регулярно видите таймауты, 502-е ошибки и жалобы от клиентов.
Кэширование сделано фрагментарно, rate limiting отсутствует или работает криво, а один упавший микросервис роняет всё остальное.
Вы понимаете, что нужно что-то менять, но не знаете, с чего начать и как сделать правильно.
Готовитесь к Senior-позиции или уже на ней, но чувствуете пробелы в архитектуре
На собеседованиях спрашивают про Circuit Breaker, CAP-теорему и distributed rate limiting, а вы отвечаете по верхам из статей.
Вы уже Senior, но архитектурные решения принимаете интуитивно, без понимания trade-offs. Хочется системных знаний, а не набора хаков из Stack Overflow.
Команда переходит от монолита к микросервисам
Монолит распилили на сервисы, но вместо упрощения получили распределённый хаос.
Непонятно, как организовать единую точку входа, как обеспечить отказоустойчивость, как отлаживать запросы, которые проходят через пять сервисов.
Логи превратились в кашу, а на каждый инцидент уходит полдня расследований.
Строите публичный API для партнёров или клиентов
Нужно сделать API, которым будут пользоваться внешние разработчики, а значит: продуманная аутентификация, rate limiting по тарифам, версионирование без боли, понятные ошибки и документация.
Вы смотрите на Stripe и GitHub и хотите понять, как они это делают.
Программа воркшопа
День 1. API Gateway паттерны и архитектура микросервисов
Начнем воркшоп с разбора API Gateway как архитектурного паттерна: когда он нужен, а когда это overengineering. Изучим паттерны маршрутизации, Backend for Frontend и агрегацию запросов. Погрузимся в resilience patterns - Circuit Breaker, Retry с exponential backoff, Bulkheads - которые спасают от каскадных сбоев.
На практике построим собственный API Gateway на Rack с нуля.
Результат:
Поймете, когда использовать API Gateway, а когда достаточно простого reverse proxy
Научитесь реализовывать Circuit Breaker с помощью Semian для защиты от каскадных сбоев
Сможете спроектировать BFF для разных клиентов (web, mobile)
День 2. Rate Limiting, безопасность и управление доступом
На второй день разберем алгоритмы rate limiting - Fixed Window, Sliding Window, Token Bucket - и научимся выбирать подходящий под задачу. Изучим distributed rate limiting на Redis с Lua-скриптами для атомарности. Сравним подходы к аутентификации: API Keys, JWT, Opaque Tokens, OAuth 2.0.
На практике реализуем Token Bucket, бизнес-тарифы с разными лимитами и JWT с refresh tokens.
Результат:
Поймете trade-offs разных алгоритмов rate limiting и можете обосновать выбор
Сможете реализовывать distributed rate limiting без race conditions
Разберетесь, когда использовать JWT, а когда лучше API Keys или opaque tokens
Научитесь самостоятельно выстраивать систему тарифов с разными лимитами для разных клиентов
День 3. Кэширование, наблюдаемость и оптимизация
В заключительный день изучим продвинутые стратегии кэширования: multi-layer (CDN → Redis → In-memory), Russian Doll caching, cache stampede prevention. Разберем паттерны инвалидации - TTL, event-based, tag-based - и их trade-offs. Погрузимся в observability: distributed tracing, structured logging, Golden Signals, SLI/SLO.
На практике построим multi-layer cache с warming и tag-based инвалидацией, а также настроим correlation для логов и организуем сбор метрик.
Результат:
Научитесь проектировать многоуровневое кэширование и выбирать стратегию инвалидации
Поймете, как предотвратить cache stampede и поддерживать warm cache
Сможете настроить structured logging и distributed tracing для микросервисов
Будете знать, какие метрики собирать и как построить actionable-алерты
Что получите по итогу:
Набор готовых production-tested решений для типичных проблем роста. Сможете формулировать технические требования и оценивать предложения команды.
Фреймворк для принятия архитектурных решений: какой алгоритм rate limiting выбрать под конкретную задачу, когда использовать JWT vs opaque tokens.
Сможете внедрить multi-layer caching, distributed rate limiting и proper observability без изобретения велосипедов.
Поймете, когда API Gateway действительно нужен, а когда это overengineering.
Освоите resilience patterns (circuit breakers, bulkheads, timeouts), которые предотвращают каскадные сбои.
Научитесь строить observability, без которой микросервисы превращаются в кошмар. Поймете как выстроить SLI/SLO для API.
Александр Норов
Senior Software Engineer в Advenias S.r.l. (Zucchetti Group)
СКАЧАТЬ СЛИВ КУРСА
Для просмотра скрытого содержимого вы должны зарегистрироваться
Возможно, Вас ещё заинтересует:
- [WP] WP WC Product Table PRO для WooCommerce
- Обучение методу ЛОГОС [Владимир Кравцов]
- Техническое Обслуживание и Надежность, Направленные на Результат [IDCON]
- Книга RCM II. Техническое обслуживание, ориентированное на надежность [Тарантино Моубрэй]
- Планирование работ и формирование графиков ТОиР [IDCON]
- NFT - перспективная крипто ниша