- 添加数据库
CREATE DATABASE IF NOT EXISTS `powerjob-product` DEFAULT CHARSET utf8mb4;
- 下载源码
git clone https://github.com/PowerJob/PowerJob.git
- 修改配置文件
powerjob-server\powerjob-server-starter\src\main\resources\application-product.properties
, 调整MySql链接配置 - 打包
mvn clean package -U -Pdev -DskipTests
nohup java -jar powerjob-server-starter-5.1.1.jar > /dev/null 2>&1 &
- 运行,查看日志, 获取默认密码
[SystemInitializeService] [S1] create default PWJB user by request: ModifyUserInfoRequest(id=null, username=ADMIN, nick=ADMIN, password=powerjob_admin, webHook=null, phone=null, email=null, extra=null)
- 打开web管理页面
- 使用初始密码登录
- 登录页面
- 在
应用管理
点击新增按钮 appName
填写同项目名- 创建Spring项目
- 更改配置
powerjob: worker: app-name: ${appName} server-address: ${服务器地址} protocol: http # 受PowerJob下发任务控制端口,因为是同台机器测试,故采用随机端口 akka-port: ${random.int(1025,65535)}
- 完成项目内容
- 页面进入对应应用
- 在
任务管理
页面新建任务 - 保存
选择一台机器执行
preProcess``postProcess
选择一台机器执行,process
所有机器执行。postProcess
参数为preProcess
结果及所有process
结果。
选择一台机器执行
process
。首个任务调用isRootTask
返回true
。
process
可调用map
方法分发任务。分发的任务将每个独立选择一台机器执行process
(可继续分发)。 分发的任务使用context.getSubTask
获取参数, 使用context.getTaskName()
获取任务名称(子任务由map
方法指定, 根任务固定为TaskConstant.ROOT_TASK_NAME
)。当所有任务执行完成后,选择一台机器调用
reduce
, 参数为所有process
结果。