默认情况下,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 消息正文调用更新组织属性 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。
如需了解详情,请参阅日志文件。