3.2. 使用 REST API 执行跨站点操作
Data Grid 服务器提供 REST API,允许您执行跨站点操作。
3.2.1. 获取所有备份位置的状态 复制链接链接已复制到粘贴板!
使用 GET 请求检索所有备份位置的状态。
GET /v2/caches/{cacheName}/x-site/backups/
GET /v2/caches/{cacheName}/x-site/backups/
Data Grid 以 JSON 格式为每个备份位置的状态响应,如下例所示:
{
"NYC": "online",
"LON": "offline"
}
{
"NYC": "online",
"LON": "offline"
}
| 值 | 描述 |
|---|---|
|
| 本地集群中的所有节点都有一个带有备份位置的跨站点视图。 |
|
| 本地集群中没有带有备份位置的跨站点视图。 |
|
| 本地集群中的某些节点具有带有备份位置的跨站点视图,本地集群中的其他节点没有跨站点视图。响应表示每个节点的状态。 |
3.2.2. 获取特定备份位置的状态 复制链接链接已复制到粘贴板!
使用 GET 请求检索备份位置的状态。
GET /v2/caches/{cacheName}/x-site/backups/{siteName}
GET /v2/caches/{cacheName}/x-site/backups/{siteName}
Data Grid 以 JSON 格式通过站点中的每个节点状态进行响应,如下例所示:
{
"NodeA":"offline",
"NodeB":"online"
}
{
"NodeA":"offline",
"NodeB":"online"
}
| 值 | 描述 |
|---|---|
|
| 节点在线。 |
|
| 节点离线。 |
|
| 无法检索状态。远程缓存可以在请求期间关闭或发生网络错误。 |
3.2.3. 执行备份位置离线 复制链接链接已复制到粘贴板!
通过 POST 请求和 ?action=take-offline 参数使备份位置离线。
POST /v2/caches/{cacheName}/x-site/backups/{siteName}?action=take-offline
POST /v2/caches/{cacheName}/x-site/backups/{siteName}?action=take-offline
3.2.4. 使备份位置在线 复制链接链接已复制到粘贴板!
使用 ?action=bring-online 参数在线启动备份位置。
POST /v2/caches/{cacheName}/x-site/backups/{siteName}?action=bring-online
POST /v2/caches/{cacheName}/x-site/backups/{siteName}?action=bring-online
3.2.5. 将状态推送到备份位置 复制链接链接已复制到粘贴板!
使用 ?action=start-push-state 参数将缓存状态推送到备份位置。
POST /v2/caches/{cacheName}/x-site/backups/{siteName}?action=start-push-state
POST /v2/caches/{cacheName}/x-site/backups/{siteName}?action=start-push-state
3.2.6. 取消状态传输 复制链接链接已复制到粘贴板!
使用 ?action=cancel-push-state 参数取消状态传输操作。
POST /v2/caches/{cacheName}/x-site/backups/{siteName}?action=cancel-push-state
POST /v2/caches/{cacheName}/x-site/backups/{siteName}?action=cancel-push-state
3.2.7. 获取状态传输状态 复制链接链接已复制到粘贴板!
使用 ?action=push-state-status 参数检索状态传输操作的状态。
GET /v2/caches/{cacheName}/x-site/backups?action=push-state-status
GET /v2/caches/{cacheName}/x-site/backups?action=push-state-status
Data Grid 以 JSON 格式为每个备份位置的状态进行响应,如下例所示:
{
"NYC":"CANCELED",
"LON":"OK"
}
{
"NYC":"CANCELED",
"LON":"OK"
}
| 值 | 描述 |
|---|---|
|
| 状态传输到备份位置正在进行。 |
|
| 状态传输成功完成。 |
|
| 出现错误,状态为 transfer。检查日志文件。 |
|
| 状态转移取消正在进行。 |
3.2.8. 清除状态传输状态 复制链接链接已复制到粘贴板!
使用 ?action=clear-push-state-status 参数发送站点的清除状态传输状态。
POST /v2/caches/{cacheName}/x-site/local?action=clear-push-state-status
POST /v2/caches/{cacheName}/x-site/local?action=clear-push-state-status
3.2.9. 修改获取离线条件 复制链接链接已复制到粘贴板!
如果满足某些条件,站点将处于离线状态。修改离线参数,以控制备份位置自动离线的时间。
流程
检查配置了
GET请求和take-offline-config参数的离线参数。GET /v2/caches/{cacheName}/x-site/backups/{siteName}/take-offline-configGET /v2/caches/{cacheName}/x-site/backups/{siteName}/take-offline-configCopy to Clipboard Copied! Toggle word wrap Toggle overflow Data Grid 响应包括
after_failures和min_wait字段,如下所示:{ "after_failures": 2, "min_wait": 1000 }{ "after_failures": 2, "min_wait": 1000 }Copy to Clipboard Copied! Toggle word wrap Toggle overflow 修改 取
PUT请求正文中的离线参数。PUT /v2/caches/{cacheName}/x-site/backups/{siteName}/take-offline-configPUT /v2/caches/{cacheName}/x-site/backups/{siteName}/take-offline-configCopy to Clipboard Copied! Toggle word wrap Toggle overflow
3.2.10. 从接收站点取消状态传输 复制链接链接已复制到粘贴板!
如果两个备份位置之间的连接中断,您可以在接收推送的站点上取消状态传输。
从远程站点取消状态传输,并使用 ?action=cancel-receive-state 参数保留本地缓存的当前状态。
POST /v2/caches/{cacheName}/x-site/backups/{siteName}?action=cancel-receive-state
POST /v2/caches/{cacheName}/x-site/backups/{siteName}?action=cancel-receive-state
3.2.11. 获取备份位置状态 复制链接链接已复制到粘贴板!
使用 GET 请求,从缓存管理器检索所有备份位置的状态。
GET /rest/v2/cache-managers/{cacheManagerName}/x-site/backups/
GET /rest/v2/cache-managers/{cacheManagerName}/x-site/backups/
Data Grid 以 JSON 格式的状态响应,如下例所示:
| 值 | 描述 |
|---|---|
|
| 本地集群中的所有节点都有一个带有备份位置的跨站点视图。 |
|
| 本地集群中没有带有备份位置的跨站点视图。 |
|
| 本地集群中的某些节点具有带有备份位置的跨站点视图,本地集群中的其他节点没有跨站点视图。响应表示每个节点的状态。 |
3.2.12. 执行备份位置离线 复制链接链接已复制到粘贴板!
使用 ?action=take-offline 参数使备份位置离线。
POST /rest/v2/cache-managers/{cacheManagerName}/x-site/backups/{siteName}?action=take-offline
POST /rest/v2/cache-managers/{cacheManagerName}/x-site/backups/{siteName}?action=take-offline
3.2.13. 使备份位置在线 复制链接链接已复制到粘贴板!
使用 ?action=bring-online 参数在线启动备份位置。
POST /rest/v2/cache-managers/{cacheManagerName}/x-site/backups/{siteName}?action=bring-online
POST /rest/v2/cache-managers/{cacheManagerName}/x-site/backups/{siteName}?action=bring-online
3.2.14. 启动状态传输 复制链接链接已复制到粘贴板!
使用 ?action=start-push-state 参数将所有缓存的状态推送到远程站点。
POST /rest/v2/cache-managers/{cacheManagerName}/x-site/backups/{siteName}?action=start-push-state
POST /rest/v2/cache-managers/{cacheManagerName}/x-site/backups/{siteName}?action=start-push-state
3.2.15. 取消状态传输 复制链接链接已复制到粘贴板!
使用 ?action=cancel-push-state 参数取消持续状态传输操作。
POST /rest/v2/cache-managers/{cacheManagerName}/x-site/backups/{siteName}?action=cancel-push-state
POST /rest/v2/cache-managers/{cacheManagerName}/x-site/backups/{siteName}?action=cancel-push-state