gpt4 book ai didi

c# - 即将失败的暗示

转载 作者:太空狗 更新时间:2023-10-30 00:58:18 27 4
gpt4 key购买 nike

我正在寻找可以通过编程方式检查的指示器,这些指示器会提示我的应用程序即将发生故障。我正在寻找诸如“空闲 IO 线程数量低到危险程度”、“应用程序池可用内存低”和“处理器使用率高”之类的一般信息。

这适用于 C#/asp.net 和 IIS。

以编程方式检查值的示例会很好,但不是必需的。欢迎任何好的想法。

最佳答案

我的想法:

确定您的网络应用的性能输入和输出。

  • 输入(用户数量、用户正在执行的任务、一天中的时间等)
  • 输出(内存使用、线程、滞后)

根据真实请求数据分析您的应用程序。构建一个漂亮的输入及其相关输出表。例如:

4 users calling page1 -> costs 4   - 6   mb, 4 threads
5 users calling page1 -> costs 7 - 14 mb, 5 threads
2 users calling page2 -> costs 120 - 200 mb, 1 thread

找到经常导致失败的输出,并找到导致这些输出的输入。建一个漂亮的max-likelyhood model失败。

当您的输入开始接近失败输出时,很可能即将发生失败。记录故障发生和不发生的时间,并将此信息反馈到您的表格中。您的网络应用程序将在即将失败时学习。

更新以回应评论:

查找输出是最简单的部分。

参见 SO 问题 How to get memory used in c# , How to get the cpu usage in C#对于更一般的问题 What key performance monitors should I watch for asp.net application .

这些问题的要点:

  • GC.GetTotalMemory - 告诉您垃圾收集器分配了多少。

  • Processor Object - 告诉您 CPU 上各种有趣的性能统计数据(CPU 空闲时间、使用情况等)。

关于c# - 即将失败的暗示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3112053/

27 4 0