wang15001200836 2017-11-07 02:09 采纳率: 0%
浏览 996

java 任务执行(非定时任务)绑定处理对象问题

业务是这样的 并发大概在1000个任务左右 任务A生成后需要倒计时5分钟执行一个DB操作+推送(提醒)+邮件。倒计时10分钟时执行一个DB操作+推送+邮件+任务数据的销毁。有以下几个方案:
方案1:任务生成时记录开始时间,使用定时器或Timer控件的时候,1s执行一次,内部执行方法使用线程池异步执行,判断间隔时间,更改操作。1s取一次redis。
方案2:利用工厂模式,每次创建一个 任务--任务处理 的绑定 while 用程序去控制这个任务的处理。

针对以上的情况,请各位大神,帮忙分析一下对系统的硬件要求,以及如何优化和需要注意什么地方

  • 写回答

1条回答 默认 最新

  • 伯乐_博 2017-11-07 08:27
    关注

    1s取一次?while(true)一直判断?不用这么麻烦,java直接就能实现
    1.将5分钟时要执行的操作写成一个线程A。将10分钟时执行的操作写成一个线程B。
    2.线程A中run方法刚开始直接thread.sleep(5分钟)。线程B中sleep10分钟。
    3.创建一个任务执行线程C。run方法中调用A和B。
    4..创建一个线程池。(数量,等待队列,线程全忙时处理策略这些自己根据瓶颈自己设定);
    4.任务进来。线程池执行线程C

    评论

报告相同问题?

悬赏问题

  • ¥15 求chat4.0解答一道线性规划题,用lingo编程运行,第一问要求写出数学模型和lingo语言编程模型,第二问第三问解答就行,我的ddl要到了谁来求了
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥15 maple软件,用solve求反函数出现rootof,怎么办?
  • ¥65 汇编语言除法溢出问题
  • ¥15 Visual Studio问题
  • ¥20 求一个html代码,有偿
  • ¥100 关于使用MATLAB中copularnd函数的问题
  • ¥20 在虚拟机的pycharm上
  • ¥15 jupyterthemes 设置完毕后没有效果