Apigee 技术特性概览

本页面适用于 ApigeeApigee Hybrid

查看 Apigee Edge 文档。

本主题总结了 Apigee 中的特性,并比较了 Apigee 与 Apigee Hybrid 的特性和功能。

下表列出了本主题中比较的 Apigee API 管理产品:

产品 托管位置 管理者
Apigee Google Cloud Apigee
Apigee Hybrid Google Cloud 和客户的私有数据中心 Apigee 负责对管理层面进行管理,而客户管理运行时。

Apigee 特性摘要

下表提供了 Apigee(以及 Hybrid)的功能级摘要。

功能 Apigee 和 Hybrid 支持
API 代理修订版本

部署后不可修改

Apigee Adapter for Istio 已弃用:建议您改用 Apigee Adapter for Envoy
应用组织 使用 AppGroup 或开发者应用关联来整理应用。请参阅整理客户端应用所有权
部署
  • 异步部署
  • 根据上次使用管理层面“签入”的运行时环境来检索部署状态
环境
  • 对环境组的支持
  • 通过 Apigee 界面和 API 自助完成
  • 灵活地处理拓扑
  • 一个 MP Pod 只能供一个环境使用

如需了解详情,请参阅环境和环境组简介

基于 gRPC 的代理支持

处理发送到 gRPC 目标服务器的一元 gRPC 协议 API 请求。请参阅创建 gRPC API 代理

HTTP/1.1 标头字段名称大小写

转发到后端时,将 HTTP/1.1 标头字段名称转换为小写。此行为可能会影响希望保留大小写的应用。

密钥库/信任库
  • 作为 Kubernetes Secret 进行管理的 Northbound
KVM
  • 您可以在 Apigee 界面中创建加密的环境范围 KVM。KVM 始终处于加密状态。您无法在该界面中添加、更新或查看 KVM 条目。
  • 通过 GET 命令访问 KVM 时,将 private. 特性与所有变量一起使用,以在调试 (Trace) 会话中隐藏 KVM 信息。如果未使用 private. 特性,则 KVM 仍被加密;不过,KVM 信息将在调试 (Trace) 会话中显示为解密,并且不会抛出任何异常。
  • 您可以使用 keyvaluemaps.entries APIKeyValueMapOperations 政策管理 KVM 条目。
  • 您可以针对与 KVM 相同的某些使用场景使用属性集。请参阅使用属性集
  • <MapName> 元素使 KeyValueMapOperations 政策能够在运行时确定要动态使用的 KVM。

如需详细了解如何在界面中创建 KVM,请参阅使用键值映射。如需了解如何选择适当的数据持久性机制,另请参阅访问配置数据

获利 请参阅获利概览
Node.js
  • 不支持 Node.js API 代理。
  • Apigee 建议将 Node.js 应用作为单独的容器在 Kubernetes 中进行托管(同一集群或不同集群)
OAuth 已按最终用户 ID 和/或应用 ID 撤消了新的 RevokeOAuthv2 政策
政策 请参阅政策概览
资源 无法使用组织级层资源
角色与权限
  • 通过 Google Cloud 控制台 IAM 服务进行管理
  • 系统提供了一些精选的开箱即用角色
  • 您可以创建可包括其他 Google Cloud 权限的自定义角色

如需了解详情,请参阅用户和角色

“构建代理”向导中的 SOAP 服务 不受支持。请参阅 wsdl2apigee,该开源项目提供与 Apigee 搭配使用的 SOAP 实用程序。
跟踪/调试会话 请参阅 Trace 支持
虚拟主机

对于 Hybrid:

  • 该入站流量是通过 Anthos Service Mesh 实现的。
  • 密钥和证书直接部署到 Kubernetes。

对于 Apigee:

  • 每个实例会通过自签名证书公开 HTTPS 端点。您可以通过查询组织来下载证书的 CA。

Trace/Debug 支持

下表展示了 Apigee 和 Hybrid Trace 支持:

功能 Apigee 和 Hybrid 支持
准时 稍微延迟;异步
会话名称/ID 不接受用户的会话名称
过滤条件 对复杂过滤逻辑的支持,包括 AND 和 OR 逻辑运算。可访问流变量参考文档中提到的任何流变量。语法与条件使用的语法相同,如条件参考文档中所示。
会话超时

仅定义调试会话的长度。起点是消息处理器接收在调试模式下运行的请求的时机。

默认值是 5 分钟(如果会话是通过 API 启动)和 10 分钟(如果会话是在界面中启动)。

数据会保留 24 小时,然后由 Hybrid 自动删除。

会话有效性 会话创建请求有效的时长。如果调试会话在此时间段内未启动,则同步器可以忽略会话创建请求。请务必按照前提条件中的说明,让同步器的时钟保持同步。
跟踪请求数 默认值为每个消息处理器处理 10 个;上限为 15 个。
API Apigee 公开了 Debug Session APIDebug Session Data API

API 概览

下表总结了 Apigee API 和功能。

行为 Apigee API
基本网域 apigee.googleapis.com
媒体类型 application/json
身份验证 OAuth2
键中的时间戳 String 格式
{
  "createdAt": "1234",
  "lastModifiedAt": "5678"
}
expand=false 查询参数的结构
{
  "proxies": [
    {
      "name": "helloworld"
    },
    {
      "name": "weather"
    }
  ]
}
以下划线开头的查询参数 不支持 (optimal=true)
载荷中的属性:
  • created_by
  • modified_by
  • self
不支持
载荷中的默认值 未包含
错误处理结构
{
  "error": {
    "code": 409,
    "message": "...",
    "status": "ABORTED",
    "details": [...]
  }
}
缓存删除响应 返回:204 No Content
Cache API 操作 仅限列出删除。部署 API 代理时会自动创建短期 L1 缓存。如需了解详情,请参阅缓存内部

Apigee 指标 API

Apigee 指标 API 摘要:

功能 Apigee API
API 端点 apigee.googleapis.com
每日分析电子邮件 不支持任何 API
Async Query List API 响应中省略了 userId 属性。请参阅“方法:organizations.environments.queries.list”
Custom report API 已从响应中移除了 createdBylastModifiedBy 属性。请参阅 Reports API

Apigee Hybrid 特性

下表总结了 Hybrid 特性:

服务 Hybrid 区域
Analytics 运行时层面的数据收集 Pod 使用 fluentdUDCA(通用数据收集代理)收集分析数据,并将数据发送到管理层面的 UAP(统一分析平台)。
API 代理网关 消息处理器 (MP) 负责处理传入请求。MP 作为运行时层面中的一个或多个容器化应用来实现。
持久性 Cassandra 可持久保留 KMS、KVM、配额和缓存等特性。
部署 同步器可确保 API 代理配置、环境信息和其他数据在管理层面和运行时层面保持最新状态。
管理界面 Apigee 界面是托管在管理层面上的容器化应用。
负载均衡 Istio Ingress 控制器向运行时层面中的路由器/消息处理器 (RMP) 容器化应用发出请求。
API 通过管理服务器MART 访问 Apigee API。MART 与本地 Cassandra 数据存储区进行交互,并充当 API 提供商,以便 Apigee API 访问和管理运行时数据实体。
指标 由所有服务的集群的单个 Prometheus 服务器进行管理。