zoukankan      html  css  js  c++  java
  • IIS应用程序池性能分析

    #查看应用程序池和w3wp.exe进程的对应关系
    iisapp -a

    C:windowssystem32inetsrvappcmd.exe list wp

    查看任务管理器:

    在性能计数器中找到对应的w3wp进程(使用PID进行匹配)

    6580就是 w3wp#1的PID,所对应的apppool就是pricemanage2

    然后再查看所需要的w3wp#1进程的内存使用情况:

    参考:http://support.microsoft.com/kb/919790/zh-cn   Memory Leak分析

         http://outofmemory.cn/c/dotNet-outOfMemoryException

         http://support.microsoft.com/kb/2020006   Out Of Memory调试分析

         http://blog.csdn.net/lazyleland/article/details/6704661  Ou tOf Memory调试分析(性能计数器分析、WinDbug调试Dump)

          If you get OOM's at 400 MB, there are a few possibilities :(WinDbug调试Dump)

          http://blogs.msdn.com/b/tess/archive/2005/11/25/who-is-this-outofmemory-guy-and-why-does-he-make-my-process-crash-when-i-have-plenty-of-memory-left.aspx

          

      A 32-bit operating system can address 4GB of virtual address space, regardless of the amount of physical memory that is installed in the box. Out of that, 2GB is reserved for the operating system (Kernel-mode memory) and 2GB is allocated to user-mode processes. The 2GB allocated for Kernel-mode memory is shared among all processes, but each process gets its own 2GB of user-mode address space. (This all assumes that you are not running with the /3gb switch enabled.)

      When an application needs to use memory, it reserves a chunk of the virtual address space and then commits memory from that chunk. This is exactly what the .NET Framework's garbage collector (GC) does when it needs memory to grow the managed heaps. When the GC needs a new segment for the small object heap (where objects smaller than 85K reside), it makes an allocation of 64MB. When it needs a new segment for the large object heap, it makes an allocation of 32MB. These large allocations must be satisfied from contiguous blocks of the 2GB of address space that the process has to work with. If the operating system is unable to satisfy the GC's request for a contiguous block of memory, a System.OutOfMemoryException (OOM) occurs.

      There are two reasons why you might see an OOM condition.

    1. Your process is using a lot of memory (typically over 800MB.)
    2. The virtual address space is fragmented, reducing the likelihood that a large, contiguous allocation will succeed.

      It's also possible to see an OOM condition due to a combination of 1 and 2.

      From:http://blogs.iis.net/webtopics/archive/2009/05/22/troubleshooting-system-outofmemoryexceptions-in-asp-net.aspx  Out Of Memory调试分析

  • 相关阅读:
    dw2018修改为中文
    C# 响应一个html页面
    layui 时间控件 单击 年直接赋值
    js 正则 测试
    python之读取和写入csv文件
    python安装与配置
    hive支持sql大全
    HiveQL与SQL区别
    Hadoop插件安装
    简单算法学习之快速排序详解
  • 原文地址:https://www.cnblogs.com/dreamer-fish/p/4031128.html
Copyright © 2011-2022 走看看