默认情况下,Edge 使用 RPC 部署 API 代理。虽然此模式非常适合大多数安装,但如果通过 RPC 进行大量并发调用,具有许多 MP 的较大拓扑可能会出现超时问题。Apigee 计划将来弃用此实现。
因此,Apigee 建议大型部署使用 HTTP 而不是 RPC 进行部署。
除了有望提高可靠性之外,启用 HTTP 部署还可改进部署过程中可能抛出的异常的内容和格式。
本部分介绍如何为部署启用 HTTP。
更新您的组织
如需启用 HTTP 部署,请向更新组织属性 API 发送 PUT
请求。在请求正文中设置以下属性:
媒体资源 | 说明 |
---|---|
allow.deployment.over.http |
确定 Edge 是否可以通过 HTTP(以及 RPC)部署 API 代理。如果设置为 true ,则允许 HTTP 部署;否则,设置为 false 。默认值为 false 。如需启用 HTTP 部署,您必须将此属性设置为 |
use.http.for.configuration |
指定用于配置事件的方法。可能的值包括:
如需启用 HTTP 部署,Apigee 建议将此属性设置为 |
除了在消息正文中设置这些属性之外,您还必须将 Content-Type
标头设置为 application/json
或 application/xml
。
以下示例使用 JSON 消息正文调用 Update Organization Properties API。
curl -u admin_email:admin_password "http://management_server_IP:8080/v1/organizations/org_name" -X POST -H "Content-Type: application/json" -d '{ "properties" : { "property" : [ { "name" : "allow.deployment.over.http", "value" : "true" }, { "name" : "use.http.for.configuration", "value" : "always" } ] } }'
如需在您的所有组织中的所有 API 代理上启用 HTTP 部署,您必须按上述方法更新每个组织。
测试更新
如需测试更新是否成功,请在已更新的组织中触发 API 代理上的部署事件,然后查看消息处理器的日志文件。部署事件的日志条目应包含 mode:API
。
如需了解详情,请参阅日志文件。