您正在查看 Apigee Edge 文档。
前往 Apigee X 文档。信息
我可以创建或部署的托管目标数量是否有限制?
如需了解您的方案的托管目标权限,请参阅 Apigee Edge Cloud 比较矩阵规范表。
Hosted Target 代理是否支持 Management API?
未创建新的管理 API,或更改了现有 API 以支持托管目标;但是,只要正确构建托管目标代理,您就可以使用现有管理 API 部署和管理使用托管目标的代理。另请参阅 Node.js 应用所需的目录结构。
我可以使用 IP 许可名单来保护目标后端吗?
构建托管目标的技术 Google App Engine (GAE) 不提供为应用提供静态 IP 地址的方式。GAE 使用 IP 池范围;因此,可以允许一系列 IP 地址。如需了解详情,请参阅此 GAE 常见问题解答条目:静态 IP 地址和 App Engine 应用。
我可以在一个代理中放置多个 <HostedTarget> 目标端点吗?
不可以。每个代理只能部署一个托管目标应用。已部署的应用是位于代理的 resources/managed 目录中的应用。
能否解决缺少 apigee-access 的问题?
您无法在 Hosted Targets 应用中使用 apigee-access
模块。如果您将传统嵌入式 Node.js 与 apigee-access
搭配使用,并且想要迁移到托管的目标平台,请考虑以下可能性:
- 使用 Edge 政策 - 尽可能使用标准 Edge 政策替换现有
apigee-access
代码的功能。 - 使用标头 - 您可以通过 HTTP 请求标头将 KVM 值和流变量放入 Node.js 应用中。此策略适用于 API 代理的请求流中可用的 KVM 值或流变量。
- 使用环境变量 - 您可以设置环境变量,其值由 KVM 提供。相关说明请参阅用户指南的清单文件部分。
我可以使用 Java 密钥库 (JKS) 文件进行 TLS 加密吗?
Hosted Targets 不支持将 JKS 用于 TLS 来替代 PEM 文件,请参阅此处之前的文档。Hosted Targets 使用原生 Node.js,因此以原生方式使用 OpenSSL。设置 TLS/SSL 连接时,请参阅 Node.js 文档提供的 TLS (SSL) 文档。
管理临时文件的最佳方式是什么?
务必删除临时文件。临时目录中的本地磁盘存储是内存中的文件系统。您写入的所有文件都会占用函数可以使用的内存。您写入的文件通常在连续调用时可用,因此如果不删除这些文件,最终可能会导致内存不足错误,并且随后需要进行冷启动。
请勿试图在临时目录之外执行写入操作。此外,请使用 os.tmpdir() 和 path.join() 等独立于平台的方法来构建临时文件路径,确保您的函数也可以在任何平台上的模拟器上运行。
如需了解详情,请参阅此 Google Cloud 文档。
我可以部署多个代理修订版本吗?
借助 Apigee Edge,您可以将代理的多个修订版部署到具有不同基本路径的环境;不过,托管式目标不支持此行为。
请求标头大小是否有限制?
对于最新版本的 Node.js (11.3.0+) 以及 LTS 版本(包括 6.14.0+、8.14.0+ 和 11.3.0+),您可以在 Node.js 应用中使用的请求标头大小上限为 8 KB。如果要传递大于 8 KB 的标头,请指定上方列表中未列出的其他 Node.js 版本。您可以在应用的清单文件中执行此操作。例如:
runtime: node runtimeVersion:6.4.1 application:my-express-app env: - name: NODE_ENV value: production - name: LOG_LEVEL value: 3
我可以对托管目标使用 HTTP 响应流式传输吗?
托管式目标不支持 HTTP 响应流式传输,因为托管式目标的构建基础技术 Google App Engine (GAE) 不支持流式传输。
有请求超时限制吗?
Google App Engine (GAE) 规定了 60 秒的请求超时时间。另请参阅 GAE 文档中的配额和限制。