My Life My Dream!

守信 求实 好学 力行
随笔 - 193, 文章 - 0, 评论 - 55, 阅读 - 34万
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

随笔分类 -  DotNET

摘要:【问题现象】:反复做影像文件下载查看操作,出现对该web应用的所有请求不响应 【问题分析】:wireshark跟踪发现,Chrome进程发送的tcp报文出现tcp windows size为0的情况。确认为环境问题后,改用IE及360兼容模式,均不能再现问题,怀疑为chrome的bug 【解决方案】 阅读全文

posted @ 2021-08-10 18:25 召冠 阅读(309) 评论(0) 推荐(0) 编辑

摘要:问题现象:Fiddler跟踪web请求响应时间11秒之多,但从该功能的程序日志记录查看,执行时间只有不到1秒,调阅对应的iis请求响应日志,iis处理时间确实是11秒,抓取dump分析,竟然没有该功能的线程堆栈,很奇怪。。。问题分析:多次重现问题并抓取dump分析发现,每次都有一个发生邮件的异步线程 阅读全文

posted @ 2021-01-12 14:44 召冠 阅读(357) 评论(0) 推荐(0) 编辑

摘要:自17年开始新产品开始全面支持Oracle 12c,但陆续发现各种环境问题兼容性的坑,在此汇总一下: 使用11.2.0.1的客户端版本,在连接12c时,发现system账号登陆报用户名密码错误,普通的Oracle账号没有问题 解决办法:升级Oracle客户端版本为11.2.0.4; 在.NET4.0 阅读全文

posted @ 2018-03-10 15:44 召冠 阅读(835) 评论(0) 推荐(0) 编辑

摘要:近一段时间多次发现因GC问题造成系统性能问题(应用服务间歇性响应缓慢、应用服务器CPU占用较高等),在此总结一下: 1、代码中直接调用GC.Collect() 2、字符串等操作频繁的内存申请 3、频繁的LoadAssembly反射 场景一:直接调用GC.Collect() 场景二:字符串连接操作 场 阅读全文

posted @ 2018-01-18 20:06 召冠 阅读(788) 评论(0) 推荐(0) 编辑

摘要:近期进行压力测试时发现,平均响应时间较上一个版本延长10%以上、应用服务器CPU超过90%,这很不科学。。。随机抓取两个dump文件,查看发现存在不少Oracle ODP.NET提交事务或关闭连接的堆栈,感觉上来说这不是很正常,此类操作很慢吗?很消耗CPU?查阅当前的Oracle客户端为最新的12.2.0.1(Oracle.DataAccess.dll版本:4.122.1.0),而产品性能测试环境... 阅读全文

posted @ 2018-01-04 22:42 召冠 阅读(1150) 评论(0) 推荐(0) 编辑

摘要:调试dump文件,加载相匹配版本的sos/clr时,绝大多数都是可以正常使用的。 然而凡事都有例外,今天在做类似工作时,遇到了错误: CLRDLL: Consider using ".cordll -lp <path>" command to specify .NET runtime directo 阅读全文

posted @ 2018-01-01 12:06 召冠 阅读(1010) 评论(0) 推荐(0) 编辑

摘要:收到一个dump文件,运行环境的.net framework的详细版本是多少呢?dump信息与性能计数器结合分析时,想知道该dump运行的进程号是多少?dump定位到有效的堆栈信息,而对应的源码是怎么写的呢?mex扩展提供了大量节省人力搜索的命令,类似扩展可以到windbg网站了解:http://www.windbg.org/0:102> .timeDebug session time: Wed ... 阅读全文

posted @ 2017-12-31 17:42 召冠 阅读(849) 评论(0) 推荐(0) 编辑

摘要:winform应用在使用一段时间后,切换到其他系统或者打开word、excel文档,再切换回winform应用时,系统有时出现不响应的现象。有时在锁屏后恢复桌面及应用时也发生此问题。经微软支持确认,是因为 https://blogs.msdn.microsoft.com/dsui_team/2012/10/31/debugging-windows-forms-application-hangs-d... 阅读全文

posted @ 2017-12-15 11:36 召冠 阅读(1729) 评论(2) 推荐(2) 编辑

摘要:1、关于ODP.NET的Windows计数器问题 使用微软的缺省驱动时,可以通过windows性能监视器很方便的监控数据库连接数,选择.NET Data Provider for Oracle/Sqlserver中的NumberOfPooledConnections即可。但是微软早就放弃了对Orac 阅读全文

posted @ 2017-02-23 15:16 召冠 阅读(831) 评论(0) 推荐(0) 编辑

摘要:问题描述: 项目反馈应用负载的其中一台服务器业务操作的响应非常慢,登录该服务器发现W3WP进程CPU持续超过90%,哪怕在业务低峰期也是如此?远程查看后发现该应用服务器承载的请求确实很低,why??? 原因分析: 抓取w3wp进程的dump发现,正在运行的线程都没有我们系统的堆栈代码。并且长时间运行 阅读全文

posted @ 2016-09-08 08:59 召冠 阅读(1169) 评论(0) 推荐(0) 编辑

摘要:问题描述: 某二次开发的项目反馈,不定期出现应用服务器无响应的情况,登录服务器发现任务管理器中有大量的w3wp僵尸进程。 分析过程: 针对同一进程每隔15秒抓取dump,连续抓取3个,对比发现线程信息没有变化,并且每个线程的CPU时间和堆栈都没有变化,奇怪??? 以其中一个僵尸进程的dump日志为例 阅读全文

posted @ 2016-09-07 15:05 召冠 阅读(547) 评论(0) 推荐(0) 编辑

摘要:项目反馈报出503错误,需要收集性能数据如下: 1、Windows性能监视器,该应用程序池进程的线程和处理队列 2、问题重现时的进程dump 这是请求到达IIS后遇到的第一个队列,HTTP.sys收到请求后会将请求放入对应的应用程序池队列,这样可以减少上下文的切换。需要注意的是应用程序池队列虽然是给w3wp进程用的,但它存在于http.sys的内存区(http.sys是一个运行于kernel-... 阅读全文

posted @ 2016-09-07 11:48 召冠 阅读(3291) 评论(1) 推荐(1) 编辑

摘要:背景: 事务是数据库管理系统的一个基本概念,事务具有四个基本特点,即ACID:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability),通过事务机制可以保证数据库的一致性和完整性。 不过数据库事务只能在数据库实例的同一个会话级别进行 阅读全文

posted @ 2016-09-07 10:09 召冠 阅读(2733) 评论(3) 推荐(0) 编辑

摘要:问题描述: 一个业务复杂、执行时间很长的功能,经常报出“基础链接已经关闭:接收时发生错误”,很是蹊跷。。。 问题分析: 首先,查阅应用服务器的系统日志,发现问题发生时总是会伴随着w3wp进程崩溃的错误,很有问题呀。。。 找到一个自动收集了dump的日志,打开查看错误信息,噢噢。。。。 反编译现场的对 阅读全文

posted @ 2016-09-03 17:41 召冠 阅读(4338) 评论(0) 推荐(0) 编辑

摘要:背景描述: 最近一个项目的系统管理员和业务运维人员分别反馈问题: 1、应用系统每个月会有一两次宕机,需要管理员手工重启IIS; 2、财务模块一个功能经常报网络错误“网络异常,请检查网络连接”“Unable to read data from the transport connection: 远程主 阅读全文

posted @ 2016-02-01 11:06 召冠 阅读(3542) 评论(2) 推荐(2) 编辑

摘要:IIS性能相关的配置、命令应用程序池回收不要使用缺省的“固定时间间隔(分钟)”:1740(即29小时),建议改为0可以根据实际情况设置特定时间回收,比如凌晨4点最大工作进程数可以根据实际情况调整进程数,比如设置为2附,cmd命令方式回收应用程序池:C:\Windows\System32\inetsr... 阅读全文

posted @ 2016-01-19 17:36 召冠 阅读(519) 评论(0) 推荐(0) 编辑

摘要:问题现象:完整的SQL脚本如下:select ac.constraint_name key_name, acc.column_name key_col, 1 from all_cons_columns acc, all_constraints ac where acc.owner = ac.owne... 阅读全文

posted @ 2016-01-05 19:42 召冠 阅读(1008) 评论(0) 推荐(0) 编辑

摘要:DebugDiag简介 Debug Diagnostic Tool (DebugDiag)是微软提供的工具,可以用来追踪windows平台下的程序崩溃,卡死,内存泄漏等一些疑难问题的原因,按照问题类别配置收集后,反馈给公司技术人员。下载后按缺省提示安装即可: https://www.microsof 阅读全文

posted @ 2015-10-17 10:32 召冠 阅读(6975) 评论(0) 推荐(1) 编辑

摘要:问题描述:系统不定期报出Oracle“未处理的内部错误(-2)”,严重时IIS会Crash 典型异常日志如下: Exception type: System.AccessViolationException Message: 尝试读取或写入受保护的内存。这通常指示其他内存已损坏。 InnerExce 阅读全文

posted @ 2015-10-16 09:42 召冠 阅读(793) 评论(0) 推荐(0) 编辑

摘要:问题描述: 系统中多个功能不定期出现“Unable to get error message (6107) (0).”错误,即分布式事务超时,但报出错误的部分功能根本没有使用分布式事务。原因分析: 推测是存在分布式事务未提交的情况,回到线程池后被复用造成的,例如: 系统中A功能存在分布式事务未提交的... 阅读全文

posted @ 2015-10-10 11:37 召冠 阅读(773) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示