windbg定位WEB性能瓶颈案例一则
测试环境
服务器:II服务器
网站:门户网站
条件
并发: 2000
LoadRunner思考时间:1s
表现
CPU:100% 对应w3wp进程
WebService–>Current connections:2300
DB:CPU 10% 无压力
压力降低后表现
随着并发量下降,CPU 和 WebService–>Current connections 随着下降,随后恢复正常;
分析
1)IIS的CPU达到100%,DB的CPU只有10%,瓶颈可能在WEB程序端;
2)压力降低后,CPU 和 WebService–>Current connections 随着下降,并恢复正常,说明有等待,没有死锁;
DUMP文件分析
1)用 !syncblk 找出等待资源,信息如下:

2)切换到 91 线程看看它在干什么

3)看看其他线程在干什么 ~* e !clrstack, 最后看到大部分的调用如下

结论
明了了,在查找母版页的时候,申请了排它锁,其他线程需要等待当前持有锁的线程释放之后才能继续往下执行,形成了较长的队列,成为了瓶颈。
windbg定位WEB性能瓶颈案例一则的更多相关文章
- Selenium自动化中DOM,XPATH,CSS定位Web页面对象的优劣性分析
加速IE浏览器自动化执行效率:Selenium自动化中DOM,XPATH,CSS定位Web页面对象的优劣性分析 1.技术背景 在Web应用中,用户通过键盘在输入框中输入值和鼠标点击按钮,链 ...
- web综合案例04
web综合案例02 web综合案例02 web综合案例04 待补充 ... ...
- web综合案例03
web综合案例03 web综合案例03 web综合案例03 web综合案例03 ... 待复习
- web综合案例02
web综合案例02 web综合案例02 web综合案例02 ... ... 内容待添加
- web综合案例01
web综合案例01 ... .... 内容待添加
- python网络-静态Web服务器案例(29)
一.静态Web服务器案例代码static_web_server.py # coding:utf-8 # 导入socket模块 import socket # 导入正则表达式模块 import re # ...
- python网络-动态Web服务器案例(30)
一.浏览器请求HTML页面的过程 了解了HTTP协议和HTML文档,其实就明白了一个Web应用的本质就是: 浏览器发送一个HTTP请求: 服务器收到请求,生成一个HTML文档: 服务器把HTML文档作 ...
- 定位服务API案例
定位服务API案例 要使用定位服务API,需要确保设备已经下载并安装了HMS Core服务组件,并将Location Kit的SDK集成到项目中. 指定应用权限 Android提供了两种位置权限: A ...
- 如何定位web前后台的BUG
一.对系统整体的了解 Server端:jsp+Servlet+json 数据库:sql.MySQL.oracle等 前台: 涉及到 jstl,jsp,js,css,htm等方面 后台:servlet, ...
随机推荐
- Javascript对象、Jquery扩展简单应用
Javascript对象,表现方式一: person = new Object(); person.firstname = "An"; person.lastname = &quo ...
- CFBundleVersion与CFBundleShortVersionString
CFBundleVersion,标识(发布或未发布)的内部版本号.这是一个单调增加的字符串,包括一个或多个时期分隔的整数. CFBundleShortVersionString 标识应用程序的发布版 ...
- LeetCode Course Schedule II
原题链接在这里:https://leetcode.com/problems/course-schedule-ii/ 题目: There are a total of n courses you hav ...
- Java Map 按Key排序和按Value排序
Map排序的方式有很多种,这里记录下自己总结的两种比较常用的方式:按键排序(sort by key), 按值排序(sort by value). 1.按键排序 jdk内置的java.util包下的Tr ...
- 第三篇 SQL Server安全主体和安全对象
本篇文章是SQL Server安全系列的第三篇,详细内容请参考原文. 一般来说,你通过给主体分配对象的权限来实现SQL Server上的用户与对象的安全.在这一系列,你会学习在SQL Server实例 ...
- 查看docker中container的ip
使用命令 docker inspect 容器ID 然后过虑出 IPAddress 即可查看 Docker 的 IP docker inspect 容器ID | grep IPAddress
- C# 微信海报
最近悟出来一个道理,在这儿分享给大家:学历代表你的过去,能力代表你的现在,学习代表你的将来.我们都知道计算机技术发展日新月异,速度惊人的快,你我稍不留神,就会被慢慢淘汰!因此:每日不间断的学习是避免被 ...
- bash 截取字符串
转载自http://blog.chinaunix.net/uid-1757778-id-3162034.html 命令的2种替换形式 $()和 ``示例:截断字符串 a): #截取文件名称 ...
- iOS 顺传
ios 顺传一层的话,直接用属性 改变里面的值 顺传穿两到三层的话 使用KVO // 设置item - (void)setItem:(UITabBarItem *)item { _item = ite ...
- PostgreSQL Performance Monitoring Tools
PostgreSQL Performance Monitoring Tools https://github.com/CloudServer/postgresql-perf-tools This pa ...