问题标签 [quartz.net]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - Quartz.NET RemoteScheduler 与 AdoJobStore 无法找到程序集
大家好,
我已经成功创建了一个在 Windows 服务中运行的 Quartz.NET 远程服务器。我遵循源代码中的示例 12 并稍微修改它以使用带有 sqlite 的 AdoJobStore。
在远程客户端上,我创建了一个 Windows 窗体应用程序并成功连接到服务器。一切都很顺利,直到我尝试实际添加工作。
上面的最后一行因异常而失败:
找不到程序集“System.Data.SQLite,版本=1.0.66.0,文化=中性,PublicKeyToken=db937bc2d44ff139”。
SQLite 程序集就在那里。奇怪的是,当我使用 RamJobStore 时,这不会发生。任何人请帮忙。
.net - 如何设置 Quartz.NET 线程池中的线程数?
我在 Quartz.NET 文档的本教程部分中看到,应该可以定义 Quartz 调度程序将使用的最大线程数。在我的特殊情况下,我想将此数字设置为 1。但在 API 文档中,我找不到访问调度程序正在使用的线程池实例并在其上设置任何属性的方法。
目前我的代码如下所示:
有人知道我如何设置池中的线程数吗?
提前感谢您的帮助!
asp.net - Quartz.NET 日历可通过 ASP.NET 页面配置?
我正在使用 Quartz.NET 创建一个应用程序,以及一个用于添加作业和配置系统的 ASP.NET 项目。我希望能够使用 Quartz.NET 日历,但我需要一种方法让用户通过 ASP.NET 页面创建/配置日历。有没有简单的方法来做到这一点?我可以使用 AJAX 日历控件吗?
谢谢
c# - 文件事务问题 - 存储每个文件的来源?
我正在创建一个应用程序,它使用 Quartz.NET 根据常规表达式自动下载和上传文件到各种源(HTTP、FTP 和网络路径)。用户可以为每个下载和上传操作选择多个路径,因此典型的工作可能是从http服务器下载文件,也从ftp服务器下载,并将所有文件上传到网络路径。
目前,我正在从所有下载源下载所有文件,并将它们存储在一个文件夹中(文件夹的名称是特定于该作业的 GUID)。然后对于上传阶段,它会简单地读取该目录中的所有文件,并将它们上传到路径,这很棒。
问题是,对于特定路径,用户可能会在上传完成后要求删除这些路径,这是一个问题,我如何才能找出文件夹中文件的来源?我一直在想办法解决这个问题,例如为每个下载路径创建文件夹,但我需要在下载而不是上传时检查重复名称,另外我需要合并两个子文件夹......等等!
任何人都可以提供任何想法吗?非常感谢
c# - 在 Quartz.NET 中修改 JobDataMap
我正在用 C# 创建一个 Quartz.NET 应用程序,并创建了一堆管理网页 (C#/ASP.NET),以便用户可以轻松地创建作业、设置数据映射字段和编辑数据映射字段。
不过,我在编辑作业数据地图时遇到了一些麻烦——我所做的任何更改都不会被保存。修改作业数据映射后我需要调用什么吗?
谢谢
tsql - Quartz .Net - BigInt DateTime 的含义
我们使用 sql server 作为 Quartz.net 的持久数据存储。我想写一些查询@时间值。具体来说 - Qrtz_Fired_Triggers.Fired_Time、Qrtz_Triggers.Next_fire_time、Prev_fire_time。
在我的一生中,我找不到任何能说明这些数据是什么的东西——滴答声、毫秒、微秒、纳秒。我猜到了几件事,但都被证明是错误的。
最好的答案将包括将大整数转换为日期时间的数学,甚至可能是我应该找到的页面/文档的链接 - 解释这些字段中数据的含义。
如果您有关于使用 Quartz .Net 库查看此信息的具体说明,那将不胜感激,但是,我确实有两个目标 - 了解所存储的日期/时间数据的含义并将其保存在 T-SQL 中。如果我得到一个,我可以找出 T-SQL 或找出。
c# - Quartz.NET - 作业不运行?
我正在尝试将 Quartz.NET 实现为 C# 中的 Windows 服务。当我期望它们触发时,我的工作没有触发......实际上,据我所知?
我的“我的工作”计划在“每分钟”之后的下一个偶数分钟开始运行。但是,当下一分钟到来时,我似乎无法判断是否有任何实际运行。
我会假设当我的作业运行时,会在作业执行时弹出一个 CLI 窗口,并且控制台操作将是可见的,(我什Console.ReadKey()
至在其中放了一个以确保窗口不会打开和关闭这么快我看不到它),但据我所知,时间表根本不执行作业。
我注意到所有时间都是 UTC 时间,并且StartTimeUtc
将设置为 UTC 时间,距离我的本地计算机时间 +6 小时,但我还假设 Quartz 调度程序通过从我的 TimeZone 设置计算执行时间来处理它,尽管我无法确认或确认我的日程安排的实际时间。
我想有一些方法可以设置 Common Logging 程序集并利用它来帮助我了解我的状态,但我还没有弄清楚如何处理它以启用任何类型的日志以获取来自我的 Windows 服务的反馈,除了从写入我为它创建的事件日志。
我的 Windows 服务的 OnStart 功能
我的 Job 的 Execute() 函数如下:
如果您能帮我弄清楚如何解决我的实际日程安排活动,我也许可以自己解决这个问题......?
php - Quartz.NET:运行 PHP cmd 行会导致 php_mssql.dll 上的访问被拒绝?
我有一个实现 Quartz.NET 调度的 Windows 服务,它从 XML 文件中读取调度的作业信息,解析它以运行 cmd 行,并使用解析的参数创建一个调度的作业。
我目前正在使用 PHP 命令行脚本来测试调度程序的命令行执行,它似乎可以很好地启动作业,它们甚至成功完成,在 eventLog 中显示脚本输出......
问题是每次运行时,都会显示一个带有错误的警告弹出窗口:
“PHP 启动:无法加载动态库 'C:\php5\php_mssql.dll' - 访问被拒绝”
如果我对此警告响应 OK,则脚本似乎运行良好,但如果它仍然在屏幕上,则进一步计划的 PHP 脚本将运行完成,但输出为空(我假设在它之前运行的暂停作业阻碍了它。 )...
如何以编程方式防止访问被拒绝消息?
运行解析后的 CMD 行的 Quartz.NET Job Execution 脚本如下:
提前谢谢大家!
编辑:我正在运行的 php 脚本是一个简单的 HELLO WORLD,它不与数据库交互,但我有一种感觉,如果我确实运行了一个使用 DB 功能的脚本,它会由于访问被拒绝消息而失败......这个也是不能接受的,这个项目我必须能满负荷使用PHP!
EDIT2:我使用 Windows LocalService 帐户安装了该服务。
.net - 应用程序数据缓存 - Quartz.NET 与任务列表?
我正在为 .NET 中的大型系统设计应用程序数据缓存。
应用程序数据缓存将从多个(10 多个)不同的系统或数据库轮询。它还需要以特定的时间间隔(30 分钟)刷新。
我有两个选择。
第一个是使用 Quartz.NET(或其他调度程序框架)以一定的时间间隔触发缓存构建器。似乎我可以很容易地控制配置文件中的间隔,并且调度非常灵活。
第二种选择是使用任务列表,其中一个或多个任务将提取数据并构建缓存,最后一个任务将在可配置的时间段内休眠。然后我可以触发任务列表并让它运行直到应用程序关闭。
现在,我更倾向于第二个选项,我可以传入取消令牌,这样可以更好地控制启动和关闭过程。此外,可以分解单个任务以定义依赖关系,例如任务层次结构。
上面哪种方式更好?有没有更好的办法?
c# - Quartz.NET 故障预防/检测方法
我几乎完成了基于 Quartz.NET 的 Windows 服务(使用 ADO.NET,而不是 RAM 作业)。该服务根据计划将文件复制/移动到各种路径。不过,我有一些担忧。该服务具有某种检测方法/系统非常重要,可以检测程序何时因任何原因失败 - 无论是文件复制失败,还是整个调度程序崩溃。只是想知道你们认为最好的方法是什么?我有一些模糊的想法,但我希望听到更多的意见。