现在开发一个项目有个需求,有一个用户id库,需要定时每隔几分钟,抓取用户产生的新数据,本人没有什么这方面的经验,暂时遇到了几个问题:
1、如果执行这个程序,是用java命令启动这个程序,然后定时执行一次,还是将这个程序放到容器里面执行(例如:tomcat),还有什么好的推荐的方法,望大家指点,因为我觉得这两个方式都不好,首先,java命令这个,如果一台机器要更新或者出bug的话,那就会出问题了,因为只有一台机器,如果用多台机器要怎么弄呢?那个id库是动态更新的,怎么均匀的分配到这几台机器上呢?
2、这个如果id库量比较大的话,每几分钟执行一次,如果只有一台机器,估计几分钟,没办法把新的数据取出来,所以等id库变大的时候肯定需要更多的机器,这个如何实现呢?
3、之前考虑 activemq ,想有一进程负责把所有的id每个几分钟抛到activemq中,然后有多个机器从mq中取id,然后根据id取数据,处理数据。不知道这样是否可行,感觉没有利用上activemq。望大家提些建议!!!
问题补充:OpenMind 写道
用activemq来做load balance是一个可行方案;定时任务可以使用quartz,比较成熟的调度框架。
谢谢你的建议,quartz我看了一下,应该挺适合的,不过还有一个问题,这个程序怎么执行?用java 命令起一个进程吗?还是有什么开源的框架做这件事情。
问题补充:OpenMind 写道
你可以直接一个main函数启动一个java程序,这个程序里面可以添加quartz的支持、可以调用activemq的jms客户端等等,当然这样做需要你自己写一个简单的容器,管理java对象等等。
不过推荐你把这些功能做到一个web app里面去,比如用spring bean容器管理那些服务,这样可以节省很多工作量。
决定用activemq了,您有学习资料可以推荐一下吗?有代码当然更好了,多谢!
相关推荐
### JAVA定时运行程序知识点解析 #### 一、概述 在Java编程中,实现定时任务是一项常见且实用的功能。本文将详细介绍如何使用`java.util.Timer`类来创建一个能够定时执行特定任务的应用程序。通过分析提供的代码...
使用jfinal编写的本地应用,压缩文件里包括了eclipse本程序的源代码和可执行的jar文件。 通过配置数据库连接信息和要执行的sql语句,可实现定时执行多个sql语句。 所要执行的语句只能是写死的,可支持sqlserver ...
定时程序是任何应用程序中的重要组成部分,它允许在特定时间间隔执行某些任务,或者在预设的时间点触发事件。Java提供了丰富的API来帮助开发者创建这样的功能。 Java中的定时任务主要涉及到以下核心概念: 1. **`...
java(Swing)定时关机程序,含源码及注释
Java定时关机小程序是一种利用Java编程语言开发的实用工具,主要功能是设定一个特定时间后自动关闭计算机。这个小程序特别适合初学者学习,因为它涵盖了Java基础、GUI设计以及时间管理和系统操作等多方面的知识。 ...
在编程领域,尤其是在Java开发中,创建一个定时关机程序是一项常见的练习,它能帮助我们理解如何使用系统调用和时间管理。这个"JAVA定时关机程序源代码"是一个很好的学习资源,特别是对于初学者来说,它能深入理解...
9. **定时任务**:如果程序需要定期检查重启条件,可以使用Java的ScheduledExecutorService或者第三方库如Quartz来实现定时任务。 通过以上分析,我们可以推测这个程序的工作流程大致如下:Watch.java线程持续监控...
然而,Java程序通常以JAR(Java Archive)文件的形式运行,需要Java虚拟机(JVM)才能执行。在某些情况下,用户可能希望将Java应用程序打包成可执行的.exe文件,以便在没有安装JVM的Windows系统上直接运行。本文将...
Java定时执行任务是Java开发中常见的一种需求,用于在特定时间点或按照预设周期执行某段代码。在Java中,有两种主要的方式来实现定时任务:Java.util.Timer类和java.util.concurrent包下的ScheduledExecutorService...
在Java编程中,定时执行某个任务是一项常见的需求,例如定期备份数据、发送邮件或执行维护操作等。要实现这一功能,Java提供了多种解决方案。这里我们将深入探讨两种主要的方法:Java的`java.util.Timer`类和Java 5...
java实现定时任务java实现定时任务java实现定时任务java实现定时任务java实现定时任务java实现定时任务java实现定时任务java实现定时任务java实现定时任务java实现定时任务java实现定时任务java实现定时任务java实现...
Java定时关机小程序是一种利用Java编程语言开发的实用工具,它允许用户设定一个特定时间,以便在指定时间点自动关闭计算机。这个程序通常包括一个用户界面,用户可以通过该界面设置关机时间、查看剩余时间,并提供...
Java Scheduler 是一个强大的工具,用于在Java应用程序中实现定时任务。它允许开发者安排任务在特定时间执行,或者按一定间隔重复执行。这个“java scheduler 定时demo”应该包含了一个示例项目,演示了如何使用Java...
Java定时执行任务是Java开发中常见的一种需求,用于在特定时间执行特定的代码逻辑,例如数据备份、统计分析等。本文将详细介绍Java中三种常见的定时任务实现方式:`java.util.Timer`、`ServletContextListener`以及...
在Java编程中,将程序制作成可执行程序主要是为了方便用户直接运行而无需通过命令行。Java的可执行程序通常是指JAR(Java Archive)文件,它包含了一系列的类文件、资源文件以及相关的元数据。以下是三种常见的生成...
在Java编程中,实现定时发送信息的功能,可以利用Java的定时任务处理库,例如`java.util.Timer`类或`java.util.concurrent.ScheduledExecutorService`。这些工具可以帮助我们创建一个类似于闹钟的服务,按照预设的...
在Java编程环境中,实现一个简易的定时提醒功能可以极大地提高我们的工作效率,让我们在专注工作的同时,也能合理地安排休息时间。下面将详细讲解如何利用Java实现这个功能。 首先,我们需要了解Java中的定时任务...
### Java定时执行任务详解 #### 一、Java定时任务实现方式概述 在Java中实现定时任务的方法有很多,这里主要介绍一种常见的实现方式:利用`java.util.Timer`类来完成定时任务的调度。`Timer`类提供了多种方法来...
1. **Java虚拟机(JVM)**:JVM是Java程序运行的基础,它解释并执行字节码。JVM包括指令系统、寄存器、栈、存储区和碎片回收区等组件。 2. **Java API**:API是预定义的软件组件集合,提供各种常用功能。Java API的...
Java定时任务的实现是软件开发中常见的需求,用于在特定时间执行特定的业务逻辑,例如数据备份、报表生成等。本文将详细介绍两种常用的Java定时任务实现方式:Timer类和Spring框架的Quartz调度器。 首先,第一种...