Разбор 11 вопросов с собеседования Apigee: кэширование, OAuth, JWT, квоты, Spike Arrest. Практические ответы и примеры кода для подготовки.
Готовитесь к собеседованию по Apigee API Management? В этой статье я разберу 11 реальных вопросов, которые мне задавали на интервью. Вы узнаете не только теорию, но и практические сценарии: как настроить квоты для разных пользователей, чем отличается OAuth от JWT и как работает взаимный TLS. К каждому вопросу — ответ с примерами на Python и советами для продакшена.
Кэширование повышает производительность API, сокращая число обращений к бэкенду. Интервьюер спросил именно про Response Cache, но важно понимать все политики кэширования.
Сохраняет полный ответ бэкенда. Возвращает закэшированный ответ для идентичных запросов. Снижает нагрузку на бэкенд и улучшает время отклика.
Примеры использования:
Ключевые преимущества: более быстрые API, снижение задержки, меньший трафик к бэкенду, лучшая масштабируемость.
SSL защищает соединение между клиентом и сервером.
Клиент проверяет сертификат сервера. Сертификат клиента не требуется. Поток: клиент → сервер (сертификат) → проверка → защищённое соединение.
Обычное использование: публичные REST API, веб-сайты, мобильные приложения.
Клиент и сервер обмениваются сертификатами и проверяют друг друга. Поток: клиент ↔ сервер (обмен сертификатами) → взаимная проверка.
Обычное использование: банковские API, медицинские API, государственные приложения, корпоративные интеграции.
Совет для собеседования: Apigee поддерживает Mutual TLS через настройку truststore и keystore.
Один из самых частых вопросов.
Проверяет, кто вы. Примеры: логин/пароль, OAuth, JWT, сертификаты.
Пример: вход в Gmail — Google проверяет вашу личность.
Определяет, что вам разрешено делать после аутентификации.
Пример: администратор может создавать и удалять пользователей, а читатель — только просматривать.
Запоминалка: аутентификация = личность, авторизация = права.
Обе политики управления трафиком, но решают разные проблемы.
Контролирует общее количество запросов за период (например, 1000 запросов в день). После достижения лимита запросы отклоняются. Сценарии: планы подписки, лимиты на клиента, биллинг.
Сглаживает внезапные всплески трафика (например, 100 запросов в секунду). Если пришло 1000 запросов мгновенно, Spike Arrest распределяет их. Сценарии: защита бэкенда, сглаживание трафика.
| Quota | Spike Arrest |
| Общее количество запросов | Скорость запросов |
| Основан на времени (день/месяц) | Основан на всплесках (сек/мин) |
| Контроль подписки | Защита бэкенда |
slice() и split()split() преобразует строку в массив. Пример:
let str = "Apigee,OAuth,JWT";
str.split(",");
// Результат: ["Apigee", "OAuth", "JWT"]slice() извлекает часть строки или массива. Пример:
let str = "Apigee";
str.slice(0, 3);
// Результат: "Api"Отличие: split() — строка → массив, slice() — возвращает выбранную часть.
Сценарийный вопрос. Ответ: в Apigee политики Quota могут использовать идентификаторы: API Key, Client ID, Developer App, Access Token, Custom Header.
Пример:
Подходы:
Это частый реальный сценарий в Apigee.
Многие путают. OAuth — это фреймворк авторизации, JWT — формат токена.
OAuth решает: может ли пользователь получить доступ к API? JWT безопасно переносит информацию о пользователе.
OAuth может использовать JWT или opaque-токены. JWT может работать и без OAuth.
| OAuth | JWT |
| Фреймворк авторизации | Формат токена |
| Предоставляет доступ к API | Хранит утверждения (claims) |
| Поддерживает несколько grant types | Самодостаточный токен |
| Может использовать JWT | Может работать без OAuth |
Используйте политику GenerateJWT. Шаги:
Пример claims: iss, sub, aud, exp, role, department.
Используйте политику VerifyJWT. Проверка включает: подпись, срок действия, издателя, аудиторию, алгоритм, опционально — кастомные claims. Если проверка успешна, запрос продолжается; иначе — ошибка авторизации.
Интервьюер хотел услышать практический опыт, а не определения.
Да. Apigee поддерживает большие нагрузки, но лимиты зависят от: конфигурации платформы, лимитов рантайма, ограничений бэкенда, настроек балансировщика, таймаутов и памяти. Большие нагрузки увеличивают задержку и потребление памяти, их следует избегать.
Лучшие практики: сжимайте GZIP, используйте пагинацию, стриминг данных, избегайте излишне больших тел запросов и ответов.
OAuth — когда нужна безопасная авторизация API, несколько приложений потребляют API, требуется управление жизненным циклом токенов (выпуск, отзыв, обновление). Примеры: банковские API, корпоративные API, партнёрские API.
JWT — когда нужен компактный самодостаточный токен, предпочтительна stateless-аутентификация, claims должны путешествовать с токеном, требуется быстрая проверка без обращения к БД. Примеры: микросервисы, Single Sign-On (SSO), внутренние API.
В корпоративных развёртываниях часто используются вместе: OAuth 2.0 управляет авторизацией, а JWT — формат access token.
Эти 11 вопросов покрывают ключевые темы собеседования по Apigee. Чтобы подготовиться, сосредоточьтесь на:
Освоив эти концепции, вы сможете не только объяснить, что делает функция, но и почему и когда её использовать. Удачи на собеседовании!
Хочешь закрепить знания на практике?
Решай задачи на Algolit — интерактивная платформа для обучения
Начать бесплатно →