Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Quartz.Net导致services.exe导致services.exe上的CPU峰值_.net_Windows_Quartz.net - Fatal编程技术网

Quartz.Net导致services.exe导致services.exe上的CPU峰值

Quartz.Net导致services.exe导致services.exe上的CPU峰值,.net,windows,quartz.net,.net,Windows,Quartz.net,我们使用Quartz构建的后台应用程序导致服务和控制器应用程序(Services.exe)使用高CPU。应用程序本身使用可接受的CPU范围(空闲时为0-1%,触发作业时为3-4%)和内存(最大200MB)。但是,每当触发作业时,services.exeCPU使用量就会增加,并导致服务器出现问题,从而阻止其他服务重新启动 应用程序中的一些见解: 大约75个工作,其中5-10个工作间隔2分钟,其余工作在午夜进行。(问题经常发生) quartz.threadPool.threadCount=10 q

我们使用Quartz构建的后台应用程序导致
服务和控制器应用程序(Services.exe)
使用高CPU。应用程序本身使用可接受的CPU范围(空闲时为0-1%,触发作业时为3-4%)和内存(最大200MB)。但是,每当触发作业时,
services.exe
CPU使用量就会增加,并导致服务器出现问题,从而阻止其他服务重新启动

应用程序中的一些见解:

  • 大约75个工作,其中5-10个工作间隔2分钟,其余工作在午夜进行。(问题经常发生)
  • quartz.threadPool.threadCount=10
  • quartz.scheduler.batchTriggerAcquisitionMaxCount=100
  • 使用RAMJobStore
  • 与IoC容器一起使用单例模式

感谢您的帮助。

发现了我们的应用程序存在的问题,无论谁路过此问题,请在此处写信。至少它可以给我们一些想法去哪里找

调查结果:

  • Quartz.Net与该问题没有任何关系
  • 我们的记录器enricher试图查询每个日志的服务名称
  • 此操作导致service.exe响应,从而导致CPU高
我尝试过几个windows profiler,但不幸的是,它们都没有提供足够或易于理解的信息。最后,尝试了dotTrace,它向我展示了应用程序中的热点,之后,在我的应用程序和
services.exe
之间建立关联就很容易了

个人学习:

  • 我试图在我的应用程序和
    services.exe
    之间建立关联,而这两者必须存在关联。但我的错误是把重点放在Quartz.Net和如何管理操作系统上的线程上
  • 尽管问题不同,但对我来说,寻求相关性是关键。没有火,就没有烟
谢谢