Java 时间触发作业Cron还是Quartz?

Java 时间触发作业Cron还是Quartz?,java,cron,quartz-scheduler,Java,Cron,Quartz Scheduler,我已经问了一个问题。我被介绍认识了石英。 同时,我还在网上搜索它,人们说Unix中的cron是一个很好的解决方案 哪一个更好?利与弊是什么 系统的某些规格: *Unix操作系统 *用Java编写的程序 *我有一个包含1000多个条目的任务队列,对于每个时间戳,最多可能触发500个任务 使用cron似乎可以为应用程序添加另一个入口点,而Quartz则可以集成到应用程序中。因此,如果您希望向从cron调用的进程传递一些信息,您将被迫处理一些进程间通信。在Quartz中,您只需(呵呵)运行多个线程 c

我已经问了一个问题。我被介绍认识了石英。 同时,我还在网上搜索它,人们说Unix中的
cron
是一个很好的解决方案

哪一个更好?利与弊是什么

系统的某些规格: *Unix操作系统 *用Java编写的程序 *我有一个包含1000多个条目的任务队列,对于每个时间戳,最多可能触发500个任务

  • 使用
    cron
    似乎可以为应用程序添加另一个入口点,而
    Quartz
    则可以集成到应用程序中。因此,如果您希望向从
    cron
    调用的进程传递一些信息,您将被迫处理一些进程间通信。在
    Quartz
    中,您只需(呵呵)运行多个线程
  • cron
    依赖于平台,
    Quartz
    不依赖于平台
  • Quartz
    可以让您可靠地确保任务在给定时间运行,或者在服务器停机一段时间后某个时间运行。纯
    cron
    不会为您做这件事(除非您手动处理)
  • Quartz
    有一种更灵活的语言来表达事件(当任务应该被触发时)
  • 考虑内存占用。如果您的单个任务不共享任何内容或很少共享,那么最好将它们作为单独的进程从操作系统中运行。如果它们共享大量信息,最好将它们作为一个进程中的线程
  • 不太确定如何使用
    cron
    方法处理集群
    Quartz
    可能用于以下扩展模式(我没有尝试过,但我相信它是可行的)

  • cron的优点是任何系统管理员都知道如何使用它,并且在许多地方都有文档记录。如果cron能够完成这项工作,那么它将是首选的解决方案

    哇!我真的很感激你的广泛比较!这正是我一直在寻找的。非常感谢!!!!Quartz有自己的群集功能,您不需要向其添加分发层。它允许您说“在某个地方的集群上运行此作业”。此功能非常令人印象深刻,因为我稍后将处理集群。^ u^谢谢你,斯卡夫曼~