Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RFC-1023 Admin API 支持并发请求多个目标和并发请求多个 API #78

Closed
matyhtf opened this issue Oct 18, 2021 · 0 comments · Fixed by swoole/library#124
Closed

Comments

@matyhtf
Copy link
Member

matyhtf commented Oct 18, 2021

多目标请求

请求

all: 所有进程,包括 master、manager、worker、task-worker,但不包含 reactor 线程
all_worker: 所有 worker 进程
all_task_worker: 所有 task-worker
all_reactor: 所有 reactor 线程,仅在PROCESS模式可用
specific: 指定的 worker,通过 GET 参数传入 workers

响应

{
  code: 0,
  data: {
     'worker-0':  {}, // worker-0 结果
     'worker-1':  {}, // worker-1 结果
     'master':  {}, // master 结果
  }
}

实例

/api/getpid/all : 请求所有进程,获取结果
/api/getpid/specific?workers[]=worker-0&workers[]=worker-1&workers[]=master&workers[]=reactor-0:请求 worker-0、worker-1、master、reactor-0

并发请求 API

可同时并发请求多个 API:/api/multi

请求

不接受第3个 url path,请求通过 POST 发起。在 POST Body 中指定具体的 API 和参数

[
    {
        "path": "/api/getpid/master?a=1&b=hello",
        "post": {}
    },
    {
        "path": "/api/getpid/all",
        "post": {}
    },
    {
        "path": "/api/close_session/master",
        "post": {"session_id": 1, "force": 0}
    }
]

POST body 为 list ,每个元素为一个请求,请求包含 pathpost 两个参数,post 可选。path 是具体请求的 API 的 url path 可带有 GET 参数。post 是传给此 APIPOST 内容。

备注:绝大部分 API 不支持 post

响应

[
  {
    code: 0,
    data: {}
  },
  {
    code: 0,
    data: {}
  },
  {
    code: 4001,
    data: {}
  },
]

响应也返回 list,与请求的顺序必须一一对应。

@matyhtf matyhtf changed the title Admin API 支持并发请求多个目标和并发请求多个 API RFC-1023 Admin API 支持并发请求多个目标和并发请求多个 API Oct 29, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants