Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
X
xxl_job
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
promotion
xxl_job
Commits
d1313082
提交
d1313082
authored
3月 28, 2020
作者:
xuxueli
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
执行器注册逻辑优化:新增配置项 ”注册地址 / xxl.job.executor.address“,优先使用该配置作为注册地址,为空时使用内嵌服务…
执行器注册逻辑优化:新增配置项 ”注册地址 / xxl.job.executor.address“,优先使用该配置作为注册地址,为空时使用内嵌服务 ”IP:PORT“ 作为注册地址。从而更灵活的支持docker执行器动态ip和动态映射端口问题。
上级
239200e5
显示空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
27 行增加
和
16 行删除
+27
-16
XXL-JOB官方文档.md
doc/XXL-JOB官方文档.md
+7
-6
XxlJobExecutor.java
...c/main/java/com/xxl/job/core/executor/XxlJobExecutor.java
+13
-7
XxlJobConfig.java
...n/java/com/xxl/job/executor/core/config/XxlJobConfig.java
+7
-3
没有找到文件。
doc/XXL-JOB官方文档.md
浏览文件 @
d1313082
...
...
@@ -1729,12 +1729,13 @@ url: http://www.xxx.com
method: get 或 post
data: post-data
```
-
15、
[
迭代中
]
自定义失败重试时间间隔;
-
16、
[
迭代中
]
任务复制功能;点击复制是弹出新建任务弹框,并初始化被复制任务信息;
-
17、
[
迭代中
]
新增执行器描述、任务描述属性;
-
18、
[
迭代中
]
任务执行一次的时候指定IP;
-
19、
[
迭代中
]
任务日志支持单个清理和状态转移,方便触发子任务;
-
20、
[
迭代中
]
任务结果丢失处理:针对长期处于运行中的任务(设置过期时间时,运行超过"过期时间+1min";未设置超时时间时,运行超过"30min"),主动检测该执行器是否在线,如果不在线主动标记失败;
-
15、执行器注册逻辑优化:新增配置项 ”注册地址 / xxl.job.executor.address“,优先使用该配置作为注册地址,为空时使用内嵌服务 ”IP:PORT“ 作为注册地址。从而更灵活的支持docker执行器动态ip和动态映射端口问题。
-
16、
[
迭代中
]
自定义失败重试时间间隔;
-
17、
[
迭代中
]
任务复制功能;点击复制是弹出新建任务弹框,并初始化被复制任务信息;
-
18、
[
迭代中
]
新增执行器描述、任务描述属性;
-
19、
[
迭代中
]
任务执行一次的时候指定IP;
-
20、
[
迭代中
]
任务日志支持单个清理和状态转移,方便触发子任务;
-
21、
[
迭代中
]
任务结果丢失处理:针对长期处于运行中的任务(设置过期时间时,运行超过"过期时间+1min";未设置超时时间时,运行超过"30min"),主动检测该执行器是否在线,如果不在线主动标记失败;
### TODO LIST
...
...
xxl-job-core/src/main/java/com/xxl/job/core/executor/XxlJobExecutor.java
浏览文件 @
d1313082
...
...
@@ -32,28 +32,32 @@ public class XxlJobExecutor {
// ---------------------- param ----------------------
private
String
adminAddresses
;
private
String
accessToken
;
private
String
appName
;
private
String
address
;
private
String
ip
;
private
int
port
;
private
String
accessToken
;
private
String
logPath
;
private
int
logRetentionDays
;
public
void
setAdminAddresses
(
String
adminAddresses
)
{
this
.
adminAddresses
=
adminAddresses
;
}
public
void
setAccessToken
(
String
accessToken
)
{
this
.
accessToken
=
accessToken
;
}
public
void
setAppName
(
String
appName
)
{
this
.
appName
=
appName
;
}
public
void
setAddress
(
String
address
)
{
this
.
address
=
address
;
}
public
void
setIp
(
String
ip
)
{
this
.
ip
=
ip
;
}
public
void
setPort
(
int
port
)
{
this
.
port
=
port
;
}
public
void
setAccessToken
(
String
accessToken
)
{
this
.
accessToken
=
accessToken
;
}
public
void
setLogPath
(
String
logPath
)
{
this
.
logPath
=
logPath
;
}
...
...
@@ -81,7 +85,7 @@ public class XxlJobExecutor {
// init executor-server
port
=
port
>
0
?
port:
NetUtil
.
findAvailablePort
(
9999
);
ip
=
(
ip
!=
null
&&
ip
.
trim
().
length
()>
0
)?
ip:
IpUtil
.
getIp
();
initRpcProvider
(
ip
,
port
,
appName
,
accessToken
);
initRpcProvider
(
address
,
ip
,
port
,
appName
,
accessToken
);
}
public
void
destroy
(){
// destory executor-server
...
...
@@ -143,10 +147,12 @@ public class XxlJobExecutor {
// ---------------------- executor-server (rpc provider) ----------------------
private
XxlRpcProviderFactory
xxlRpcProviderFactory
=
null
;
private
void
initRpcProvider
(
String
ip
,
int
port
,
String
appName
,
String
accessToken
)
throws
Exception
{
private
void
initRpcProvider
(
String
address
,
String
ip
,
int
port
,
String
appName
,
String
accessToken
)
throws
Exception
{
// init, provider factory
String
address
=
IpUtil
.
getIpPort
(
ip
,
port
);
if
(
address
==
null
||
address
.
trim
().
length
()==
0
)
{
address
=
IpUtil
.
getIpPort
(
ip
,
port
);
// registry-address:default use address to registry , otherwise use ip:port if address is null
}
Map
<
String
,
String
>
serviceRegistryParam
=
new
HashMap
<
String
,
String
>();
serviceRegistryParam
.
put
(
"appName"
,
appName
);
serviceRegistryParam
.
put
(
"address"
,
address
);
...
...
xxl-job-executor-samples/xxl-job-executor-sample-springboot/src/main/java/com/xxl/job/executor/core/config/XxlJobConfig.java
浏览文件 @
d1313082
...
...
@@ -19,18 +19,21 @@ public class XxlJobConfig {
@Value
(
"${xxl.job.admin.addresses}"
)
private
String
adminAddresses
;
@Value
(
"${xxl.job.accessToken}"
)
private
String
accessToken
;
@Value
(
"${xxl.job.executor.appname}"
)
private
String
appName
;
@Value
(
"${xxl.job.executor.address}"
)
private
String
address
;
@Value
(
"${xxl.job.executor.ip}"
)
private
String
ip
;
@Value
(
"${xxl.job.executor.port}"
)
private
int
port
;
@Value
(
"${xxl.job.accessToken}"
)
private
String
accessToken
;
@Value
(
"${xxl.job.executor.logpath}"
)
private
String
logPath
;
...
...
@@ -44,6 +47,7 @@ public class XxlJobConfig {
XxlJobSpringExecutor
xxlJobSpringExecutor
=
new
XxlJobSpringExecutor
();
xxlJobSpringExecutor
.
setAdminAddresses
(
adminAddresses
);
xxlJobSpringExecutor
.
setAppName
(
appName
);
xxlJobSpringExecutor
.
setAddress
(
address
);
xxlJobSpringExecutor
.
setIp
(
ip
);
xxlJobSpringExecutor
.
setPort
(
port
);
xxlJobSpringExecutor
.
setAccessToken
(
accessToken
);
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论