Различия между Apigee Edge и Apigee X

Вы просматриваете документацию Apigee Edge .
Перейдите в документацию Apigee
X.info

В этой теме описывается, чем Apigee X (иногда также называемый просто «Apigee») отличается от Apigee Edge. Эта информация предназначена для существующих клиентов Apigee Edge, которые рассматривают возможность миграции на Apigee X.

Для получения дополнительной информации о возможностях Apigee X см. краткое описание возможностей Apigee X.

В таблице ниже перечислены продукты Apigee для управления API, которые сравниваются в данной теме:

Продукт Где размещено Управляется
Apigee Edge для публичного облака Облако Апигее Апигее
Apigee Edge для частного облака Частный центр обработки данных клиента. Клиент
Апигее Х Google Облако Апигее
Гибрид Апигии И Google Cloud, и частный центр обработки данных клиента. Apigee управляет плоскостью управления, а клиент управляет плоскостью выполнения.

Сравнение функций Apigee Edge и Apigee X

В следующих разделах сравниваются возможности Apigee Edge Public/Private Cloud с доступными функциями в Apigee X и гибридном облаке.

Обратите внимание, что ограничения Apigee X также отличаются от ограничений Apigee Edge .

Краткое описание существующих различий в характеристиках

В таблице ниже описаны различия в функциональности между Apigee X (и гибридной версией) и Apigee Edge для публичных и частных облачных платформ.

функция Apigee Edge Поддержка в Apigee X и гибридном режиме.
Изменения в API-прокси

Неизменяемый при развертывании

Активные медицинские осмотры Поддерживается для внешних MIG (использующих виртуальные машины). Не поддерживается при использовании Private Service Connect. Информацию о типах маршрутизации см. в разделе «Настройка маршрутизации» .
Адаптер Apigee для Istio Устарело: Рекомендуем использовать Apigee Adapter for Envoy .
Компании и разработчики

Существует аналогичное, но не идентичное решение. См. раздел «Использование AppGroups для организации управления правами доступа к приложениям» .

CwC (Код с конфигурацией)

Запланировано

Развертывания
  • Асинхронные развертывания
  • Получение статуса развертывания основано на времени последнего "взаимодействия" среды выполнения с плоскостью управления.
Окружающая среда
  • Поддержка экологических групп
  • Самообслуживание через пользовательский интерфейс и API Apigee.
  • Более гибкая топология обслуживания
  • Модуль MP может использоваться только в одной среде.

Для получения более подробной информации см. раздел «О средах и группах сред» .

Размещенные цели

Пожалуйста, используйте Cloud Run или Cloud Functions.

Обработка имен полей заголовка HTTP/1.1 Преобразует имена полей заголовка HTTP/1.1 в нижний регистр при переадресации на бэкэнд. В Apigee Edge регистр имен полей заголовка сохраняется.
Роли IAM для детального управления доступом на основе ролей.

Запланировано

JSONPath using [@.length-x]

Использование [@.length-x] в выражениях JSONPath не поддерживается в Apigee X. Спецификация JSONPath указывает, что выражения зависят от используемого языка сценариев. length-x — это конструкция JavaScript, а не Java, и [@.length-x] не был реализован в рамках спецификации. В Apigee X выражение [@.length-x] заменено схемой индексации ( [-x] ).

В качестве примера:

{
    "books": [
      {
        "name": "A",
      },
      {
        "name": "B",
      }
    ]
}

Входные данные: $.books[@.length-1] возвращают {“name”: “B”} в Apigee Edge и [{“name”: “B”}] в Apigee X.

Магазины ключей/Доверительные магазины

Northbound управляется как секреты Kubernetes.

KVM-переключатели
  • В пользовательском интерфейсе Apigee можно создавать зашифрованные KVM-переключатели с привязкой к среде. KVM-переключатели всегда зашифрованы. Добавлять, обновлять или просматривать записи KVM в пользовательском интерфейсе нельзя.
  • Используйте атрибут private. для всех переменных при доступе к KVM с помощью команды GET , чтобы скрыть информацию о KVM в сеансе отладки (трассировки). Если атрибут private. не используется, KVM по-прежнему будет зашифрован; однако информация о KVM будет отображаться в расшифрованном виде в сеансе отладки (трассировки), и исключение не будет сгенерировано.
  • Вы можете управлять записями KVM, используя API keyvaluemaps.entries или политику KeyValueMapOperations .
  • Наборы свойств можно использовать для решения тех же задач, что и KVM-переключатели. См. раздел «Использование наборов свойств» .
  • Элемент <MapName> позволяет политике KeyValueMapOperations динамически определять, какой KVM следует использовать во время выполнения.

Для получения дополнительной информации о создании KVM в пользовательском интерфейсе см. раздел «Использование сопоставления ключ-значение» . См. также раздел «Доступ к данным конфигурации» для получения информации о том, как выбрать подходящий механизм сохранения данных.

Микрошлюз Мы рекомендуем использовать Apigee Adapter for Envoy .
Монетизация См. Различия в монетизации
Node.js
  • API-прокси Node.js не поддерживаются.
  • Apigee рекомендует размещать приложения Node.js в виде отдельных контейнеров в Kubernetes (в одном или разных кластерах).
mTLS, идущий на север Поддерживается через балансировщики нагрузки Google Cloud. См. Apigee X Northbound Mutual TLS с использованием внешнего балансировщика нагрузки приложений .
OAuth Новая политика RevokeOAuthv2 отзывает токены по идентификатору конечного пользователя, идентификатору приложения или обоим параметрам. Эта политика заменяет API Apigee Edge для отзыва токенов OAuth2.
Политики
  • Новые правила:
    • Политика AssertCondition : Оценивает условное выражение во время выполнения в потоке запроса или ответа.
    • Политика CORS : разрешает вызовам JavaScript XMLHttpRequest (XHR), выполняемым на веб-странице, взаимодействовать с ресурсами из доменов, не относящихся к данному источнику.
    • Политика DataCapture : заменяет политику StatisticsCollector.
    • Политика ExternalCallout : отправляет gRPC-запросы на ваш gRPC-сервер для реализации пользовательского поведения, не поддерживаемого политиками Apigee.
    • Политика GraphQL : анализирует данные GraphQL и преобразует их в переменные потока сообщений, проверяет запросы GraphQL на соответствие схеме или выполняет обе функции одновременно.
    • Политика PublishMessages : публикует информацию о потоке данных вашего API-прокси в тему Google Cloud Pub/Sub.
    • Политика RevokeOAuthv2 : Отменяет авторизацию по идентификатору пользователя, идентификатору приложения или обоим параметрам.
    • Политика TraceCapture : добавляет дополнительные переменные к данным трассировки среды выполнения Apigee.
  • Политика не поддерживается:
    • Политика StatisticsCollector (заменена новой политикой DataCapture)
  • Измененная политика:
причинаФраза Не поддерживается.
Ресурсы Невозможно использовать ресурсы на уровне организации.
Роли и права доступа
  • Управление осуществляется через службу IAM в консоли Google Cloud.
  • Доступны некоторые нестандартные вакансии, отобранные специально для этой должности.
  • Вы можете создавать пользовательские роли, которые могут включать другие разрешения Google Cloud.

Для получения более подробной информации см. раздел «Пользователи и роли» .

Смысл Используйте расширенные функции безопасности API .
SOAP-сервисы в мастере создания прокси. Не поддерживается. См. wsdl2apigee — проект с открытым исходным кодом, предоставляющий утилиты SOAP для использования с Apigee.
Трассировка/Отладка сеансов См. Различия с Trace .
Виртуальные хосты

Для гибрида Apigee:

  • Входящий трафик реализуется через шлюз Apigee Ingress Gateway.
  • Ключи и сертификаты развертываются непосредственно в Kubernetes.

Для Apigee X:

  • Каждый экземпляр предоставляет HTTPS-конечную точку через самоподписанный сертификат. Сертификат центра сертификации можно загрузить, отправив запрос в организацию.

Различия с трассировкой

В следующей таблице сравниваются различия в работе функции Trace в Apigee X и гибридных средах по сравнению с Apigee Edge Cloud:

Особенность Apigee Edge Cloud Apigee X и гибрид
Своевременность В реальном времени; синхронно Небольшая задержка; асинхронный режим.
Название/идентификатор сессии Принимает имя сессии от пользователя. Не принимает имя сессии от пользователя.
Фильтры Базовая поддержка фильтров, например, фильтрация по заголовкам и параметрам запроса. Поддержка сложной логики фильтрации, включая логические операции И и ИЛИ. Доступ к любой переменной потока, упомянутой в справочнике переменных потока . Синтаксис тот же, что и при использовании условных операторов, как показано в справочнике условий .
Таймаут сессии

Определяет продолжительность сеанса отладки, а также срок хранения данных.

Значение по умолчанию составляет 20 минут при запуске через API-вызовы и 10 минут при запуске через пользовательский интерфейс.

Определяет только продолжительность сеанса отладки. Отправной точкой является момент получения обработчиком сообщений запроса на запуск в режиме отладки.

Значение по умолчанию составляет 5 минут, если сессия была инициирована через API, и 10 минут, если она была инициирована через пользовательский интерфейс.

Данные сохраняются в течение 24 часов, после чего гибридная система автоматически удаляет их.

Действительность сессии

Продолжительность времени, в течение которого запрос на создание сессии действителен. Если отладочная сессия не запустится в течение этого времени, синхронизаторы могут проигнорировать запрос на создание сессии. Убедитесь, что часы ваших синхронизаторов синхронизированы, как описано в разделе «Предварительные условия» .
Количество запросов трассировки Максимум 20 на один обработчик сообщений. По умолчанию — 10 на каждый обработчик сообщений; максимальное значение — 15.
API Apigee Edge Cloud Апигее Х
Apigee X предоставляет API для отладочных сессий и API для работы с данными отладочных сессий , но не поддерживает следующие функции через API Apigee X:
Остановить сеанс отладки

Удалить определенные транзакции

Различия с монетизацией

В таблице ниже приведено сравнение ключевых характеристик монетизации Apigee Edge и монетизации Apigee X.

Монетизация Apigee Edge Монетизация Apigee X/гибрида
Тарифные планы связаны с пакетами продуктов API, которые могут быть привязаны к нескольким продуктам API. Тарифные планы связаны с продуктами API (соотношение «один к одному»).
тарифные планы для разработчиков приложений Разработчики приложений приобретают API-продукты.
Управление квотами осуществляется на уровне API-прокси. Управление квотами осуществляется на уровне API-продукта (на уровне бизнеса).
Опубликованные тарифные планы могут только истекать; их нельзя редактировать или удалять. Опубликованные тарифные планы могут быть аннулированы, отредактированы, переведены в черновик или удалены.
Сложная настройка (без мастера или инструмента предварительного просмотра) Упрощенная настройка тарифных планов с помощью мастера и инструмента предварительного просмотра.
Политика MonetizationLimitsCheck блокирует доступ после обработки первого вызова API, если разработчик приложения не приобрел подписку. Политика MonetizationLimitsCheck немедленно блокирует доступ, если разработчик приложения не приобрел подписку или превысил квоту.
Данные о монетизации транзакций можно получить с помощью пользовательских переменных в политике записи транзакций. Apigee автоматически собирает данные о монетизации, и эти данные могут быть переопределены с помощью политики DataCapture. См. раздел «Сбор данных о монетизации» для получения дополнительной информации.
Предоплаченные и постоплатные счета можно настраивать как для разработчиков, так и для тарифных планов. Предоплаченные и постоплатные аккаунты могут быть настроены только для разработчиков.

Какие функции Apigee Edge не поддерживаются в Apigee X?

Компания Google не планирует поддерживать следующие функции:

  • Удлинители Apigee Edge Extensions
  • Хранилище спецификаций OpenAPI
  • API для поиска или отзыва токенов доступа OAuth (поскольку токены хешируются).
  • Политика OAuth v1 или OAuth OAuthv1.0a
  • Трирема (снята с производства 10.10.2019)
  • Заголовки с префиксом "X-Apigee-" не поддерживаются в Apigee X и удаляются из запросов и ответов перед отправкой целевым устройствам и клиентам.
  • Свойство Apigee Edge proxy_read_timeout не поддерживается в Apigee X. См. раздел «Настройка io.timeout.millis и api.timeout» для получения информации о соответствующих параметрах таймаута Apigee X.

сравнение API

В целом, большинство API Apigee Edge имеют эквиваленты в API Apigee. В этом разделе представлены следующие сведения:

Сводка изменений, внесенных с помощью API.

Ниже перечислены изменения в поведении всех API Apigee X по сравнению с API Apigee Edge.

Поведение API Apigee Edge API Apigee X
Базовая область api.enterprise.apigee.com apigee.googleapis.com
Типы носителей application/json
application/xml
application/json
Аутентификация OAuth2, SAML, Basic OAuth2
Временные метки в ключах формат int64
{
  "createdAt": 1234,
  "lastModifiedAt": 5678
}
формат String
{
  "createdAt": "1234",
  "lastModifiedAt": "5678"
}
Структура параметра запроса expand=false
[
        "helloworld",
        "weather"
      ]
{
  "proxies": [
    {
      "name": "helloworld"
    },
    {
      "name": "weather"
    }
  ]
}
Параметры запроса, перед которыми стоит символ подчеркивания. Поддерживается ( _optimal=true ) Не поддерживается ( optimal=true )
Свойства в полезной нагрузке:
  • created_by
  • modified_by
  • self
Поддерживается Не поддерживается
Значения по умолчанию в полезных нагрузках Включено Не включено
Структура обработки ошибок
{
        "code": "...",
        "message": "..",
        "contexts": []
      }
{
  "error": {
    "code": 409,
    "message": "...",
    "status": "ABORTED",
    "details": [...]
  }
}
Ответ на запрос об удалении кэша Возвращает: 200 OK и сведения о кэше. Возвраты: 204 No Content
Операции API кэширования Выполнить следующие действия: составить список , создать , получить , обновить , удалить , очистить все и очистить параметры. Только для просмотра и удаления . Кратковременный кэш L1 автоматически создается при развертывании API-прокси. Для получения дополнительной информации см. раздел «Внутренние механизмы кэширования» .

Различия между API метрик Apigee Edge и Apigee X

В разделе «Краткое описание изменений в использовании API» перечислены общие различия между API Apigee Edge и API Apigee X. В следующей таблице указаны конкретные различия для API метрик:

Особенность API Apigee Edge API Apigee X
конечная точка API api.enterprise.apigee.com apigee.googleapis.com
Ежедневные аналитические письма API не поддерживаются.
Асинхронный API для запросов к спискам Получите список асинхронных аналитических запросов. Свойство userId отсутствует в ответе. См. метод: organizations.environments.queries.list .
API для создания пользовательских отчетов API отчетов Свойства createdBy и lastModifiedBy были удалены из ответа. См. API отчетов .

Неподдерживаемые API Apigee Edge

В таблице ниже перечислены неподдерживаемые API Apigee Edge (для которых отсутствуют эквиваленты в API Apigee X).

категория API Неподдерживаемые API Apigee Edge
Мониторинг API API не поддерживаются.
API-прокси
  • Принудительное удаление API-прокси
  • Получить зависимости npm
  • Управление модулями npm
Аудиты Используйте API логирования Stackdriver
Кэшированные журналы API не поддерживаются.
Компании API не поддерживаются.
Приложения компании API не поддерживаются.
семейство корпоративных приложений API не поддерживаются.
Ключи приложений компании API не поддерживаются.
сеансы отладки
  • Невозможно остановить сеансы отслеживания.
  • Невозможно удалить отдельные транзакции.

Для получения более подробной информации см. «Различия с Trace» .

Приложение для разработчиков Получить количество ресурсов API
Семейство приложений для разработчиков API не поддерживаются.
Расширения API не поддерживаются.
Keystore: Truststore Проверьте хранилище ключей или хранилище доверенных сертификатов.
LDAP API не поддерживаются.
Монетизация API не поддерживаются.
OAuth V2 API не поддерживаются.
Политики API не поддерживаются.
Файлы ресурсов
  • Область пересмотра API-прокси
  • Сфера деятельности организации
Смысл API не поддерживаются.
Пользователи и роли пользователей Используйте API-интерфейсы Google Identity and Access Management (IAM), как описано в разделе «Управление пользователями, ролями и разрешениями с помощью API».
Виртуальные хосты API не поддерживаются.

Apigee Edge для частного облака против Apigee Hybrid

В приведенной ниже таблице сравниваются Apigee Edge для частного облака и гибридная версия Apigee:

Услуга Область продуктов или функций Apigee
Apigee Edge для частного облака Гибрид Апигии
Аналитика Серверы Qpid и PostgreSQL В среде выполнения модуль сбора данных использует fluentd и UDCA (Universal Data Collection Agent) для сбора аналитических данных и передачи их в UAP (Unified Analytics Platform) в плоскости управления.
API-прокси-шлюз Обработчик сообщений Обработчик сообщений (ОЗ) обрабатывает входящие запросы. ОЗ реализуются в виде одного или нескольких контейнеризированных приложений в среде выполнения.
Упорство Узел или кольцо Кассандры Cassandra обеспечивает сохранение данных для функций KMS, KVM, квот и кэширования.
Развертывание Смотритель зоопарка Синхронизатор обеспечивает актуальность конфигураций API-прокси, информации об окружении и других данных между плоскостью управления и плоскостью выполнения.
Административный пользовательский интерфейс Пользовательский интерфейс Apigee Edge размещен на сервере управления. Пользовательский интерфейс Apigee размещается на уровне управления.
Балансировка нагрузки Маршрутизатор Контроллер Istio Ingress передает запросы контейнеризированному приложению Message Processor (MP) в среде выполнения.
API Сервер управления Доступ к API Apigee X осуществляется через сервер управления и MART . MART взаимодействует с локальным хранилищем данных Cassandra и выступает в качестве поставщика API для API Apigee X, обеспечивая доступ к сущностям данных во время выполнения и их управление.
Метрики Каждый компонент сконфигурирован с использованием JMX. Управление всеми сервисами осуществляется одним сервером Prometheus на кластер.