1.概述
1)脚本要想着能被终止,我用的是
ExecutorService exector = Executors.newFixedThreadPool(threadCnt);
所以终止的话,也是使用 exector.shutDownNow()
具体写法如下:
if(Thread.currentThread().isInterrupted()){
log.info("定时任务被中断, 开始停止定时任务, " );
Thread.currentThread().interrupt();
exector.shutdownNow();
}
2)脚本还是注意和php脚本一样,可以支持少部分数据的功能校验
3)日志要健全
这点java比 php要做的好,他的 log.info等很强大,能输出调用栈信息最好
4) 脚本处理数据的失败数据重试
2.公司相关
1)多进程,要注意初始化 Trace信息,否则 远程调用别的系统调用不到
2)
3.Java本身
1)切割list
idLists.subList(0, 7)
2) 升序排序list
Collections.sort(idLists);
3) 分组list
List<List<Long>> trunkIds = Lists.partition(IdLists, groupSize);
网友评论