You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by zh...@apache.org on 2020/07/19 16:24:53 UTC

[shardingsphere-elasticjob] branch master updated: Update document for user-manual/cloud/config (#1176)

This is an automated email from the ASF dual-hosted git repository.

zhangliang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere-elasticjob.git


The following commit(s) were added to refs/heads/master by this push:
     new ef395c9   Update document for user-manual/cloud/config (#1176)
ef395c9 is described below

commit ef395c90b2328b319da9ab518388aa7c5e2840f1
Author: Liang Zhang <te...@163.com>
AuthorDate: Mon Jul 20 00:24:44 2020 +0800

     Update document for user-manual/cloud/config (#1176)
    
    * Update cloud config
---
 .../elasticjob-cloud/configuration/_index.cn.md    | 164 ++++++++++++++++++++-
 .../configuration/restful-api.cn.md                | 144 ------------------
 .../configuration/restful-api.en.md                |   7 -
 3 files changed, 163 insertions(+), 152 deletions(-)

diff --git a/docs/content/user-manual/elasticjob-cloud/configuration/_index.cn.md b/docs/content/user-manual/elasticjob-cloud/configuration/_index.cn.md
index c86d38b..91eae92 100644
--- a/docs/content/user-manual/elasticjob-cloud/configuration/_index.cn.md
+++ b/docs/content/user-manual/elasticjob-cloud/configuration/_index.cn.md
@@ -5,4 +5,166 @@ weight = 2
 chapter = true
 +++
 
-TODO
+Elastic-Job-Cloud 提供应用发布及作业注册等 RESTful API, 可通过 curl 操作。
+
+## 应用 API
+
+### 发布应用
+
+url:app
+
+方法:POST
+
+参数类型:application/json
+
+参数列表:
+
+| 属性名                   | 类型    | 是否必填 | 缺省值     | 描述                           |
+| ----------------------- |:------- |:------- |:--------- |:----------------------------- |
+| appName                 | String  | 是      |           | 作业应用名称                    |
+| appURL                  | String  | 是      |           | 作业应用所在路径                 |
+| cpuCount                | double  | 否      | 1         | 作业应用启动所需要的 CPU 数量     |
+| memoryMB                | double  | 否      | 128       | 作业应用启动所需要的内存 MB       |
+| bootstrapScript         | String  | 是      |           | 启动脚本                        |
+| appCacheEnable          | boolean | 否      | true      | 每次执行作业时是否从缓存中读取应用 |
+| eventTraceSamplingCount | int     | 否      | 0(不采样)| 常驻作业事件采样率统计条数         |
+
+参数详细说明:
+
+**appName:**
+
+为 Elastic-Job-Cloud 的作业应用唯一标识。
+
+**appURL:**
+
+必须提供可以通过网络访问的路径。
+
+**bootstrapScript:**
+
+如:bin\start.sh
+
+**appCacheEnable:**
+
+禁用则每次执行任务均从应用仓库下载应用至本地。
+
+**eventTraceSamplingCount:**
+
+为避免数据量过大,可对频繁调度的常驻作业配置采样率,即作业每执行 N 次,才会记录作业执行及追踪相关数据。
+
+示例:
+
+```bash
+curl -l -H "Content-type: application/json" -X POST -d '{"appName":"my_app","appURL":"http://app_host:8080/my-job.tar.gz","cpuCount":0.1,"memoryMB":64.0,"bootstrapScript":"bin/start.sh","appCacheEnable":true,"eventTraceSamplingCount":0}' http://elastic_job_cloud_host:8899/api/app
+```
+
+### 修改应用配置
+
+url:app
+
+方法:PUT
+
+参数类型:application/json
+
+参数列表:
+
+| 属性名                   | 类型    | 是否必填 | 缺省值     | 描述                             |
+| ----------------------- |:------- |:------- |:--------- |:------------------------------- |
+| appName                 | String  | 是      |           | 作业应用名称                     |
+| appCacheEnable          | boolean | 是      | true      | 每次执行作业时是否从缓存中读取应用  |
+| eventTraceSamplingCount | int     | 否      | 0(不采样)| 常驻作业事件采样率统计条数         |
+
+示例:
+
+```bash
+curl -l -H "Content-type: application/json" -X PUT -d '{"appName":"my_app","appCacheEnable":true}' http://elastic_job_cloud_host:8899/api/app
+```
+
+## 作业 API
+
+### 注册作业
+
+url:job/register
+
+方法:POST
+
+参数类型:application/json
+
+参数列表:
+
+| 属性名                         | 类型       | 是否必填 | 缺省值  | 描述                                               |
+| ----------------------------- |:---------- |:------- |:------ |:------------------------------------------------- |
+| appName                       | String     | 是      |        | 作业应用名称                                        |
+| cpuCount                      | double     | 是      |        | 单片作业所需要的 CPU 数量,最小值为 0.001             |
+| memoryMB                      | double     | 是      |        | 单片作业所需要的内存 MB,最小值为 1                   |
+| jobExecutionType              | Enum       | 是      |        | 作业执行类型。TRANSIENT 为瞬时作业,DAEMON 为常驻作业 |
+| jobName                       | String     | 是      |        | 作业名称                                          |
+| cron                          | String     | 否      |        | cron 表达式,用于配置作业触发时间                    |
+| shardingTotalCount            | int        | 是      |        | 作业分片总数                                       |
+| shardingItemParameters        | String     | 否      |        | 自定义分片参数                                     |
+| jobParameter                  | String     | 否      |        | 作业自定义参数                                     |
+| failover                      | boolean    | 否      | false  | 是否开启失效转移                                    |
+| misfire                       | boolean    | 否      | false  | 是否开启错过任务重新执行                             |
+| jobExecutorServiceHandlerType | boolean    | 否      | false  | 作业线程池处理策略                                  |
+| jobErrorHandlerType           | boolean    | 否      | false  | 作业错误处理策略                                    |
+| description                   | String     | 否      |        | 作业描述信息                                        |
+| props                         | Properties | 否      |        | 作业属性配置信息                                     |
+
+使用脚本类型的瞬时作业可直接将脚本上传至 appURL,而无需打成 tar 包。
+如果只有单个脚本文件可无需压缩。
+如是复杂脚本应用,仍可上传 tar 包,支持各种常见压缩格式。
+
+示例:
+
+```bash
+curl -l -H "Content-type: application/json" -X POST -d '{"appName":"my_app","cpuCount":0.1,"memoryMB":64.0,"jobExecutionType":"TRANSIENT","jobName":"my_job","cron":"0/5 * * * * ?","shardingTotalCount":5,"failover":true,"misfire":true}' http://elastic_job_cloud_host:8899/api/job/register
+```
+
+### 修改作业配置
+
+url:job/update
+
+方法:PUT
+
+参数类型:application/json
+
+参数:同注册作业
+
+示例:
+
+```bash
+curl -l -H "Content-type: application/json" -X PUT -d '{"appName":"my_app","jobName":"my_job","cpuCount":0.1,"memoryMB":64.0,"jobExecutionType":"TRANSIENT","cron":"0/5 * * * * ?","shardingTotalCount":5,"failover":true,"misfire":true}' http://elastic_job_cloud_host:8899/api/job/update
+```
+
+### 注销作业
+
+url:job/deregister
+
+方法:DELETE
+
+参数类型:application/json
+
+参数:作业名称
+
+示例:
+
+```bash
+curl -l -H "Content-type: application/json" -X DELETE -d 'my_job' http://elastic_job_cloud_host:8899/api/job/deregister
+```
+
+### 触发一次作业
+
+url:job/trigger
+
+方法:POST
+
+参数类型:application/json
+
+参数:作业名称
+
+说明:即事件驱动,通过调用 API 而非定时的触发作业。目前仅对瞬时作业生效。
+
+示例:
+
+```bash
+curl -l -H "Content-type: application/json" -X POST -d 'my_job' http://elastic_job_cloud_host:8899/api/job/trigger
+```
diff --git a/docs/content/user-manual/elasticjob-cloud/configuration/restful-api.cn.md b/docs/content/user-manual/elasticjob-cloud/configuration/restful-api.cn.md
deleted file mode 100755
index d5ae21f..0000000
--- a/docs/content/user-manual/elasticjob-cloud/configuration/restful-api.cn.md
+++ /dev/null
@@ -1,144 +0,0 @@
-+++
-title = "RESTful API"
-weight = 1
-chapter = true
-+++
-
-Elastic-Job-Cloud提供APP发布及作业注册等RESTful API可通过curl操作。
-
-### 发布作业应用
-
-url:app
-
-方法:POST
-
-参数类型:application/json
-
-参数列表:
-
-| 属性名                              | 类型  |是否必填 | 缺省值 | 描述                                                                              |
-| -----------------------------------|:------|:-------|:------|:---------------------------------------------------------------------------------|
-|appName                             |String |是      |       | 作业应用名称。为Elastic-Job-Cloud的作业应用唯一标识                                   |
-|appURL                              |String |是      |       | 作业应用所在路径。必须是可以通过网络访问到的路径                                        |
-|cpuCount                            |double |否      |   1   | 作业应用启动所需要的CPU数量                                                          |
-|memoryMB                            |double |否      |  128  | 作业应用启动所需要的内存MB                                                           |
-|bootstrapScript                     |String |是      |       | 启动脚本,如:bin\start.sh                                                          |
-|appCacheEnable                      |bool   |否      | true  | 每次执行作业时是否从缓存中读取应用。禁用则每次执行任务均从应用仓库下载应用至本地             |
-|eventTraceSamplingCount             |int    |否      | 0     | 常驻作业事件采样率统计条数,默认不采样全部记录。为避免数据量过大,可对频繁调度的常驻作业配置采样率,即作业每执行N次,才会记录作业执行及追踪相关数据|
-
-```shell
-curl -l -H "Content-type: application/json" -X POST -d '{"appName":"foo_app","appURL":"http://app_host:8080/foo-job.tar.gz","cpuCount":0.1,"memoryMB":64.0,"bootstrapScript":"bin/start.sh","appCacheEnable":true,"eventTraceSamplingCount":0}' http://elastic_job_cloud_host:8899/api/app
-```
-
-### 修改作业应用配置
-
-url:app
-
-方法:PUT
-
-参数类型:application/json
-
-参数列表:
-
-| 属性名                              | 类型  |是否必填 | 缺省值 | 描述                                                                              |
-| -----------------------------------|:------|:-------|:------|:---------------------------------------------------------------------------------|
-|appName                             |String |是      |       | 作业应用名称。为Elastic-Job-Cloud的作业应用唯一标识                                   |
-|appCacheEnable                      |bool   |是      | true  | 每次执行作业时是否从缓存中读取应用。禁用则每次执行任务均从应用仓库下载应用至本地             |
-|eventTraceSamplingCount             |int    |否      | 0     | 常驻作业事件采样率统计条数,默认不采样全部记录。为避免数据量过大,可对频繁调度的常驻作业配置采样率,即作业每执行N次,才会记录作业执行及追踪相关数据|
-
-```shell
-curl -l -H "Content-type: application/json" -X PUT -d '{"appName":"foo_app","appCacheEnable":true}' http://elastic_job_cloud_host:8899/api/app
-```
-
-### 注册作业
-
-url:job/register
-
-方法:POST
-
-参数类型:application/json
-
-参数列表:
-
-| 属性名                              | 类型  |是否必填 | 缺省值 | 描述                                                                              |
-| -----------------------------------|:------|:-------|:------|:---------------------------------------------------------------------------------|
-|jobName                             |String |是      |       | 作业名称。为Elastic-Job-Cloud的作业唯一标识                                          |
-|appName                             |String |是      |       | 作业应用名称。                                                                      |
-|jobClass                            |String |是      |       | 作业实现类                                                                         |
-|jobType                             |Enum   |是      |       | 作业类型。SIMPLE,DATAFLOW,SCRIPT                                                  |
-|jobExecutionType                    |Enum   |是      |       | 作业执行类型。TRANSIENT为瞬时作业,DAEMON为常驻作业                                    |
-|cron                                |String |是      |       | cron表达式,用于配置作业触发时间                                                      |
-|shardingTotalCount                  |int    |是      |       | 作业分片总数                                                                       |
-|cpuCount                            |double |是      |       | 单片作业所需要的CPU数量,最小值为0.001                                                |
-|memoryMB                            |double |是      |       | 单片作业所需要的内存MB,最小值为1                                                     |
-|shardingItemParameters              |String |否      |       | 分片序列号和参数用等号分隔,多个键值对用逗号分隔<br />分片序列号从0开始,不可大于或等于作业分片总数<br />如:<br/>0=a,1=b,2=c|
-|jobParameter                        |String |否      |       | 作业自定义参数<br />作业自定义参数,可通过传递该参数为作业调度的业务方法传参,用于实现带参数的作业<br />例:每次获取的数据量、作业实例从数据库读取的主键等 |
-|failover                            |boolean|否      |false  | 是否开启失效转移,开启表示如果作业在一次任务执行中途宕机,允许将该次未完成的任务在另一作业节点上补偿执行 |
-|misfire                             |boolean|否      |false  | 是否开启错过任务重新执行                                                             |
-|beanName                            |String |否      |       | Spring容器中配置的bean名称                                                          |
-|applicationContext                  |String |否      |       | Spring方式配置Spring配置文件相对路径以及名称,如:META-INF\applicationContext.xml      |
-|streamingProcess                    |boolean|否      |false  | DATAFLOW类型作业,是否流式处理数据<br />如果流式处理数据, 则fetchData不返回空结果将持续执行作业<br />如果非流式处理数据, 则处理数据完成后作业结束<br />|
-|scriptCommandLine                   |String |否      |       | SCRIPT类型作业命令行执行脚本                                                         |
-|jobProperties                       |String |否      |       | 作业定制化属性,目前支持job_exception_handler和executor_service_handler,用于扩展异常处理和自定义作业处理线程池 |
-|description                         |String |否      |       | 作业描述信息                                                                        |
-
-注册的作业可用Java和Spring两种启动方式,作业启动在[开发指南](/01-start/dev-guide/)中有说明,这里只举例说明两种方式如何注册。
-
-使用Transient的Script类型作业可直接将shell上传至appURL,而无需打成java包。如果只有单个shell文件可无需压缩。如是复杂shell或python等应用,仍可上传tar包,支持各种常见压缩格式。
-
-**Java启动方式作业注册**
-
-```shell
-curl -l -H "Content-type: application/json" -X POST -d '{"jobName":"foo_job","appName":"foo_app","jobClass":"yourJobClass","jobType":"SIMPLE","jobExecutionType":"TRANSIENT","cron":"0/5 * * * * ?","shardingTotalCount":5,"cpuCount":0.1,"memoryMB":64.0,"failover":true,"misfire":true}' http://elastic_job_cloud_host:8899/api/job/register
-```
-
-**Spring启动方式作业注册**
-
-```shell
-curl -l -H "Content-type: application/json" -X POST -d '{"jobName":"foo_job","appName":"foo_app","jobClass":"yourJobClass","beanName":"yourBeanName","applicationContext":"applicationContext.xml","jobType":"SIMPLE","jobExecutionType":"TRANSIENT","cron":"0/5 * * * * ?","shardingTotalCount":5,"cpuCount":0.1,"memoryMB":64.0,"failover":false,"misfire":true}' http://elastic_job_cloud_masterhost:8899/api/job/register
-```
-
-### 修改作业配置
-
-url:job/update
-
-方法:PUT
-
-参数类型:application/json
-
-参数:同注册作业
-
-```shell
-curl -l -H "Content-type: application/json" -X PUT -d 
-'{"jobName":"foo_job","appName":"foo_app","jobClass":"yourJobClass","jobType":"SIMPLE","jobExecutionType":"TRANSIENT","cron":"0/5 * * * * ?","shardingTotalCount":5,"cpuCount":0.1,"memoryMB":64.0,"failover":true,"misfire":true}' http://elastic_job_cloud_host:8899/api/job/update
-```
-
-### 注销作业
-
-url:job/deregister
-
-方法:DELETE
-
-参数类型:application/json
-
-参数:作业名称
-
-```shell
-curl -l -H "Content-type: application/json" -X DELETE -d 'foo_job' http://elastic_job_cloud_host:8899/api/job/deregister
-```
-
-### 触发一次作业
-
-url:job/trigger
-
-方法:POST
-
-参数类型:application/json
-
-参数:作业名称
-
-说明:即事件驱动,通过调用API而非定时的触发作业。目前仅对Transient作业类型生效。
-
-```shell
-curl -l -H "Content-type: application/json" -X POST -d 'foo_job' http://elastic_job_cloud_host:8899/api/job/trigger
-```
diff --git a/docs/content/user-manual/elasticjob-cloud/configuration/restful-api.en.md b/docs/content/user-manual/elasticjob-cloud/configuration/restful-api.en.md
deleted file mode 100755
index 1d08b7b..0000000
--- a/docs/content/user-manual/elasticjob-cloud/configuration/restful-api.en.md
+++ /dev/null
@@ -1,7 +0,0 @@
-+++
-title = "RESTful API"
-weight = 1
-chapter = true
-+++
-
-TODO