您正在查看 Apigee Edge 文档。
转到
Apigee X 文档。 info
Apigee Edge 是一个用于开发和管理 API 的平台。通过将代理层的服务前置,Edge 可为后端服务 API 提供抽象或 Facade,并提供安全性、速率限制、配额、分析等功能。
例如,您可以 观看有关 Walgreens 如何使用 API 和 Apigee Edge的网播,其中围绕照片打印、处方和其他服务提供丰富的应用生态系统 。
数字加速
通过此视频,您可以快速了解 Apigee 如何帮助您转型为数字化业务。
在服务管理和 API 管理之间选择
此视频可帮助您了解服务管理和 API 管理之间的重要区别。business.
在网络上提供服务
如今,公司希望在网络上提供其后端服务,以便移动设备和桌面设备上运行的应用可以使用这些服务。公司可能希望公开如下服务:提供产品价格和可用性信息、销售和订购服务、订单跟踪服务,以及客户端应用所需的任何其他服务。
公司通常会将服务作为一组 HTTP 端点公开。接着,客户端应用开发者向这些端点发出 HTTP 请求。然后,服务可能会以 XML 或 JSON 格式返回数据,使其返回客户端应用,具体取决于端点。
使用这些服务的客户端应用可作为移动设备或平板电脑的独立应用实现,可作为在浏览器中运行的 HTML5 应用实现,也可以作为可以向 HTTP 端点发出请求并使用任何响应数据的任何其他类型的应用。这些应用可能是由发布相关服务的同一公司开发和发布的,也可能由使用公开可用服务的第三方应用开发者开发和发布。
下图显示了此类型的模型:

由于提供商通过网络提供其服务,因此他们必须确保已采取所有必要措施来保护和防护其服务免遭未经授权的访问。作为服务提供商,请考虑:
- 安全性:如何控制对服务的访问权限以防止未经授权的访问?
- 兼容性:您的服务是否可在不同平台和设备上运行?
- 可衡量性:如何监控服务以确保它们 可用?
- 创收:如何跟踪客户对服务的访问并向其收费?
- 以及许多其他注意事项
发布用于访问任何服务的客户端应用后,该服务提供商必须确保这些服务在随着时间推移添加、修改或删除这些服务时将继续正常运行。服务提供商还必须能够告知应用开发者对服务的任何更改,以确保客户端应用与这些服务保持同步。
客户端应用开发者尝试使用不同提供商的服务时将面临挑战。目前,服务提供商可以使用众多技术来公开其服务。同一客户端应用可能必须使用一种机制来使用一个提供商的服务,而使用不同的机制来使用其他提供商的服务。应用 开发者甚至可以面临他们必须使用不同的机制来使用 同一提供商的服务的情形。
通过 Apigee Edge 提供服务
借助 Apigee Edge,您可以使用在所有服务之间保持一致且定义明确的 API 来安全地访问您的服务,而不考虑服务 实现。统一的 API 具有以下优势:
- 使应用开发者可以轻松使用您的服务。
- 让您能够更改后端服务实现,而不会影响公共 API。
- 让您能够利用分析、创收、开发者门户以及 Edge 内置的其他 功能。
下图显示了一个由 Edge 处理从客户端应用发送至 后端服务的请求的架构:

他们不会直接让应用开发者使用您的服务,而是访问在 Edge 上创建的 API 代理 。API 代理充当公开 HTTP 端点到 后端服务的映射。通过创建 API 代理,您可以让 Edge 处理保护您的服务所需的安全和 授权任务,以及分析、监控这些服务并从中 获利。
由于应用开发者向 API 代理发出 HTTP 请求,而不是直接向您的 服务发出请求,因此开发者无需了解有关您的 服务实现的任何信息。开发者需要了解的事项包括:
- API 代理端点的网址。
- 请求中传递的所有查询参数、标头或正文参数。
- 任何必需的身份验证和授权凭据。
- 响应的格式,包括响应数据格式,例如 XML 或 JSON。
API 代理会将应用开发者与后端服务隔离。因此,只要公共 API 保持一致,您就可以更改服务实现。通过维护一致的前端 API,现有客户端应用将继续正常运行,而无论后端发生什么变化。
您可以使用 API 代理上的政策向服务添加功能,而无需对后端服务进行任何更改。例如,您可以将政策添加到代理,以执行 数据转换和过滤、添加安全性、执行条件逻辑或自定义代码,以及 执行许多其他操作。请务必记住,您是在 Edge 上实现政策, 而不是在后端服务器上实现政策。
如需了解详情,请参阅了解 API 和 API 代理。
创建 API 产品
API 代理是 Apigee Edge 上的 HTTP 端点,开发者用于访问后端 服务。虽然可以,但通常并不提供单独的 API 代理。 而是将一个或多个 API 代理分组到一个 API 产品中。
API 产品是 API 代理与服务计划组合的软件包。该服务方案可为 API 代理设置访问限制、提供安全性、允许监控和分析,以及提供其他功能。API 产品也是 Edge 用于授权和访问权限控制 API 的核心机制。
您在创建 API 产品时具有极大的灵活性。例如,多个 API 产品可以共享同一 API 代理。下图显示了三个 API 产品。请注意,所有产品都允许访问 API 代理 3,但只有产品 A 可以访问 API 代理 1。

您可以为每个 API 产品设置不同的属性。例如,您可以提供一个访问限制低的 API 产品(例如每天 1000 个请求)来讨价还价。然后发布另一个 API 产品,提供对同一 API 代理的访问权限,但具有更高的访问限制,而且价格也更高。或者,您可以创建一个免费 API 产品,允许对服务进行只读访问,然后将 API 产品销售给允许读写权限的相同 API 代理。
如需了解详情,请参阅管理 API 产品。
允许客户端应用访问您的 API 产品
当应用开发者决定他们访问您的服务时,他们必须先向您的 API 产品注册其客户端应用。
注册后,应用开发者将收到一个 API 密钥,然后必须在发送给 API 产品中包含的 API 代理的每个请求中包含 API 密钥。该密钥已经过身份验证,如果身份验证成功,则允许请求访问您的后端服务。
您可以随时撤消密钥,以便客户端应用无法再访问您的服务。或者,您可以定义密钥的时间限制,以便开发者必须在特定时间之后刷新密钥。
您可以决定如何处理开发者访问您的 API 产品的注册请求。通过 使用 Apigee Edge Developer Services,您可以自动执行注册流程。也可以使用 手动流程来控制访问权限。
创建 API 产品并向开发者提供
- 创建一个或多个将公共网址映射到后端服务的 API 代理。
- 创建捆绑您的 API 代理的 API 产品。
- 部署您的 API 代理和 API 产品。
- 告知您的开发者,API 产品可用。
一旦应用开发者了解 API 产品的可用性,他们就会:
- 向您的 API 产品注册其客户端应用。
- 接收 API 产品的 API 密钥。
- 通过 API 代理(捆绑在 API 产品中)向您的服务发出请求,并通过每个请求传递 API 密钥。
Apigee Edge 的组件
Apigee Edge 包括 API 运行时、监控和分析功能以及开发者服务,这些服务 一起为 API 创建、安全、管理、 和操作提供全面的基础架构。
下图显示了 Edge 服务:

Edge API 运行时
无论您是作为服务提供商还是作为应用开发者使用 API、SDK 和其他便利服务构建 API 代理,Apigee Edge API 服务都是关于创建和使用 API。
API 管理服务器提供用于添加和配置 您的 API 代理、设置 API 产品以及管理应用开发者和客户端应用的工具。它 会分流您的后端服务中的许多常见管理问题。添加 API 代理时,您可以将政策应用于 API 代理,以增强安全性、速率限制、调解、缓存等。您还可以通过应用自定义脚本、 调用第三方 API 和服务等,自定义 API 代理的行为。如需了解详情,请参阅了解 API 和 API 代理。
如果您是 Node.js 开发者,则可以无缝地将 Node.js 模块添加到 Edge,以创建 API 和 API 混搭,同时利用 Edge 提供的优势,从消息 转换到安全再到分析。
Edge 监控和分析
Apigee Edge API Analytics 提供功能强大的工具,方便您查看 API 的短期和长期使用 趋势。您可以按热门开发者和应用细分自己的受众群体,按 API 方法了解使用情况 ,以了解在哪里投资,并为业务级别或运维级别信息创建自定义报告 。
当数据通过 Edge 传递时,系统会收集多种默认类型的信息,包括网址、 IP、API 调用信息的用户 ID、延迟时间、错误数据等。您可以创建政策以 添加其他信息,例如标头、查询参数,以及从 XML 或 JSON 中提取的请求或响应的某些部分 。这些信息会从实际请求/响应流中异步收集,因此不会对 API 性能产生任何影响。
管理界面允许您在浏览器中查看多个指标和维度,如下图所示:

但是,您也可以通过命令行界面或 RESTful API 访问和控制分析服务。如需了解详情,请参阅 API Analytics 概览 。
Edge 开发者生态系统
Apigee Edge 提供开发者服务,可帮助您:
- 管理使用您的服务的应用开发者社区。
- 与内部和外部开发者合作,正式建立与财务模型的关系。
- 授权开发者参与和创建开发者门户。应用开发者会连接到您的门户,从而访问 API 文档,以 详细了解公开的 API 产品并管理 API 密钥。
每个 Edge 客户都可以在云端或本地(使用 Apigee Edge for Private Cloud)创建自己的开发者门户。
Apigee Edge 允许您创建两种类型的门户:
- 集成式门户 ,可即时预配。请参阅构建集成式门户。

- 基于 Drupal 的门户 。请参阅构建基于 Drupal 的门户。

创收
创收功能提供财务基础架构和关系,可将您的 开发者社区转变为数字资产的实际渠道。借助创收功能,您可以 创建多种 费率方案,以根据情况向开发者收取 API 产品使用费,或者 在收益分成方案中向开发者付费。
方案包括预付费方案、后付费方案、 固定费用方案、可变费率方案、“免费增值”方案、针对特定开发者量身定制的方案、 涵盖开发者群组的方案等。此外,创收功能还包括报告和 结算功能。
如需了解详情,请参阅创收概览。
Edge 的特点
Apigee Edge 具有以下特点:
- 公共云:由 Apigee 托管的一个 SAAS 版本,您可以在其中维护 环境,从而将精力集中放在构建服务和定义这些服务的 API 。
- 私有云:本地安装,您可以在其中控制 硬件环境,并负责安装、升级、维护和其他 管理流程。
如果您对 Apigee Hybrid 版本感兴趣,请参阅以下 Apigee X 主题:
从功能上讲,公共云版本和私有云版本非常相似。不过, 私有云版本 不支持 公共云版本的所有功能。 私有云不支持的功能包括:
- 托管目标
- 扩展程序
- 集成式开发者门户(注意:支持基于 Drupal 的开发者门户)
- API 监控
- Sense
如需查看不同特点之间的差异列表,请参阅 比较 Apigee 产品。
API 之间也存在细微差异,如 Edge for Public Cloud API 和 Private Cloud API 之间的差异中所述。
公共云支持免费账号和付费账号。私有云 需要付费账号。
为了全面支持本地安装,私有云版本包含组件 ,例如 Apigee 管理服务器、Apache Cassandra NoSQL 数据库、OpenLDAP 服务器、 消息路由器和消息处理器。