gpt4 book ai didi

asp.net - 使用 Mdbg 的 ASP.NET 的基于 Web 的堆栈转储工具?

转载 作者:行者123 更新时间:2023-12-04 19:23:37 24 4
gpt4 key购买 nike

有一个很棒的presentation作者: 的首席系统架构师 Dan Farino MySpace.com ,展示了一个基于 Web 的堆栈转储工具,该工具对给定进程中运行的所有线程进行编目(它们在做什么、它们执行了多长时间等)

他们的技术也总结在 highscalability.com :

  • 性能收集器 .
    集中
    通过收集性能数据
    UDP。比 Windows 更可靠
    允许任何客户端连接并查看
    统计数据。
  • 基于 Web 的堆栈转储工具。
    可以右键单击有问题的服务器
    并获取 .Net 的堆栈转储
    托管线程。以前不得不RDC
    进入系统并附加一个调试器和
    1/2 后得到答案。慢的,
    不可扩展且乏味。不仅仅是一个
    堆栈转储,提供了很多上下文
    关于线程在做什么。
    故障排除更容易,因为您
    可以看到 90 个线程被阻塞在一个
    数据库,因此数据库可能已关闭。
  • Web 基础堆转储工具。
    全部转储
    内存分配。非常有用
    开发商。通过以下方式节省数小时的时间
    手。 • 探查器。跟踪请求
    从头到尾并产生一个
    报告。查看 URL、方法、状态、
    一切都会帮助你
    识别缓慢的请求。看着
    锁争用,很多
    抛出异常,任何东西
    这可能很有趣。很轻
    重量。它在一个盒子上运行
    每个 VIP(100 台服务器组)
    生产。每 10 个采样 1 个线程
    秒。一直在追踪
    背景。

  • 问题是:为 ASP.NET 构建基于 Web 的堆栈转储工具需要哪些工具? 为方便起见,我们假设目标 AppDomain 中托管的 *.aspx 能够输出该进程中的所有托管调用堆栈就足够了。

    有几篇文章介绍了 的使用。数据库 (完全用 C#/IL 编写的托管代码的调试器,开始随 CLR 2 SDK 一起发布)和 mdbgcore 程序集通常位于 C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin:
  • http://dotnetdebug.net/2005/11/09/exceptiondbg-v01-debug-your-exceptions/
  • http://blogs.msdn.com/jmstall/archive/tags/MDbg/default.aspx
  • http://blogs.msdn.com/vijaysk/archive/2009/11/04/asp-net-debugger-extension-for-iis-7.aspx

  • 解决方案是否会简单地引用此程序集来产生所需的输出? “列出所有托管调用堆栈”操作会对为生产流量提供服务的正在运行的进程产生什么影响?

    最佳答案

    我相信.Net的分析API是要走的路。

    SlimTune Google Code 上的项目有一个带有源的实时示例,您可以检查如何适应和改进以在 Asp.NET 场景中工作。

    问候
    马西莫

    关于asp.net - 使用 Mdbg 的 ASP.NET 的基于 Web 的堆栈转储工具?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1682192/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com