1

以为我会把这个扔在那里,看看其他人的经历是什么样的。

我在工作中遇到了一个系统问题,它停止处理队列中的作业并且可以说“堵塞”。一旦服务重新启动,软件就会处理队列,一切都会恢复正常。

以我目前的经验,我一生都无法弄清楚是什么导致了这些停工。那,我自己也无法重现停工。队列在所有不同的时间间隔都会失败,有时会连续运行一个月,有时会在 1 天内失败两次。从那以后,我涉及了两个不同的供应商和部门内的不同同事,每个人都被难住了,已经好几个月了。

自从我开始,我们已经将处理隔离到一个服务器上,并增加了我们发送给供应商的日志记录。两者都不知道问题是什么。

我们在这里和那里更新了一些设置,升级了客户端和服务器部分,但我们不知道我们所做的事情是否有助于整体解决方案。

所以我有一个似乎无法重现、随机且无法测试的问题。

有没有人遇到过类似的情况?有哪些方法可以解决这种情况?

任何共享的输入或经验都会很棒。

干杯,

编辑: : 加快了日志记录,将所有组件更新到最新版本,并确保完成了适当的防病毒排除,到目前为止,它还没有在一个多月内卡住!

4

2 回答 2

2

使用可以在生产中打开的日志框架。最初您可能需要进行过多的日志记录,但这应该有助于缩小问题范围,并且随着您越来越近,您可以缩小日志记录的范围,同时增加剩余日志语句的详细程度(就是一个词)。

于 2010-12-16T16:00:12.217 回答
0

除了凯利指出的日志记录之外,由于事情似乎停止了,因此可能会发生僵局。如果这是 Java 应用程序,一种选择是使用jconsole并连接到 JVM 实例。jconsole 有一个检测死锁选项,可以在挂断发生时提供非常有价值的信息。

如果这不是一个 Java 应用程序,也许是一个 .NET 应用程序,您可以利用这种技术

于 2010-12-16T16:08:07.663 回答