前言 一般来说.NET程序员是不用担心内存分配释放问题的,因为有垃圾收集器(GC)会自动帮你处理.但是GC只能收集那些不再使用的内存(根据对象是否被其它活动的对象所引用)来确定.所以如果代码编写不当的话,仍然会出现内存泄漏的问题,常见的情况有:一个静态变量引用了一个应该被释放的对象,事件注册后不解除注册,非托管资源使用后没有手动释放.不断的内存泄漏终会引起内存不足,挂掉你的程序. 对于这种内存泄漏问题,有很多的分析工具可以使用,常见的有CLRProfiler.ANTS Performance P…
前言 一般来说.NET程序员是不用担心内存分配释放问题的,因为有垃圾收集器(GC)会自动帮你处理.但是GC只能收集那些不再使用的内存(根据对象是否被其它活动的对象所引用)来确定.所以如果代码编写不当的话,仍然会出现内存泄漏的问题,常见的情况有:一个静态变量引用了一个应该被释放的对象,事件注册后不解除注册,非托管资源使用后没有手动释放.不断的内存泄漏终会引起内存不足,挂掉你的程序. 对于这种内存泄漏问题,有很多的分析工具可以使用,常见的有CLRProfiler.ANTS Performance P…
对于用习惯了独立Git工具和命令行的人来说,看到Visual Studio自带的Git工具后,很是别扭,到处充满了不习惯,而且是不是还会出现电脑卡顿的现象(可能是我自身电脑配置一般的问题). 如何关闭vs2017自带的Git工具? 解决方案:Vs顶部菜单 - 工具 - 选项 - 源代码管理 - 插件选择 - 当前源代码插件:设置为“无”. 如何禁用Vs2017自带的Git ? 解决方案: ctrl + r 输入 regedit 打开注册表后找到:HKEY_CURRENT_USER\Softwar…
原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处. 简介 Linux上有大量的问题诊断工具,如perf.bcc等,但这些诊断工具,虽然功能强大,但却需要很高的权限才可以使用. 而0x.tools这个工具提供了一个很好的思路,通过采样/proc目录来诊断问题,对被测量程序几乎无性能影响,且只要与目标进程拥有同等级的权限,即可正常使用. 不要小看这个权限区别,在互联网大厂,开发同学一般只能获取到一个受限于容器内的shell环境,想要获取机器的root权限几乎是不可能的.…
windbg用着还不熟悉,dottrace  还要版权,着急查看程序的cpu 的使用情况,因为程序开启之后占用处理器资源较大,问题在哪里呢,于是点开了vs2015自带的诊断工具,以前偶尔打开过,没发现其长处 在需要的时候,发现其用处挺大,最后的诊断报告也是一步到位,跟踪到占用资源最大的部分,最终发现是设备厂家提供的dll库中两个线程,挂载之后,占有了不少处理器资源. 打开要测试的工程:选择如下图…
visual studio是个强大的集成开发环境,内置了程序性能诊断工具.下面通过两段代码进行介绍. static void Main( string[] args) { Test1(); Test2(); Console.ReadKey(); } protected static void Test1() { Stopwatch sp = new Stopwatch(); sp.Start(); string str = "" ; ; i < ; i++) { ; j <…
vs2017诊断工具…
中小研发团队架构实践之生产环境诊断工具WinDbg 生产环境偶尔会出现一些异常问题,WinDbg或GDB是解决此类问题的利器.调试工具WinDbg如同医生的听诊器,是系统生病时做问题诊断的逆向分析工具,Dump文件类似于飞机的黑匣子,记录着生产环境程序运行的状态.本文主要介绍了调试工具WinDbg和抓包工具ProcDump的使用,并分享一个真实的案例.N年前不知谁写的代码,导致每一两个月偶尔出现CPU飙高的现象.我们先使用ProcDump在生产环境中抓取异常进程的Dump文件,然后在不了解代码的…
1.问题: 最近在做日志的实时同步,上线之前是做过单份线上日志压力测试的,消息队列和客户端.本机都没问题,但是没想到上了第二份日志之后,问题来了: 集群中的某台机器 top 看到负载巨高,集群中的机器硬件配置一样,部署的软件都一样,却单单这一台负载有问题,初步猜测可能硬件有问题了. 同时,我们还需要把负载有异常的罪魁祸首揪出来,到时候从软件.硬件层面分别寻找解决方案. 2.排查: 从 top 中可以看到 load average 偏高,%wa 很高,%us 偏低: 从上图我们大致可以推断 IO…
Systemtap的原理,Systemtap与DTrace比较,以及安装要求和安装步骤本系列文章详细地介绍了一个Linux下的全新的调式.诊断和性能测量工具Systemtap和它所依赖的基础kprobe以及促使开发该工具的先驱DTrace并给出实际使用例子使读者更进一步了解和认识这些工具. 本文是该系列文章之三,它讲解了Systemtap的原理,Systemtap与DTrace比较,以及安装要求和安装步骤,最后通过一个例子向读者展示Systemtap的工作机理.本系列文章之一讲解了kprobe的…
权威支持: 选择正确的 WebSphere 诊断工具 原文:https://www.ibm.com/developerworks/cn/websphere/techjournal/0807_supauth/0807_supauth.html 本文提供一个快速参考指南,以帮助您决定要在任何给定时间使用的最常见 WebSphere® 诊断工具,同时还提供了一些背景信息,这些信息提供了有关如何开发问题确定工具的初步认识. 本文来自于IBM WebSphere Developer Technical J…
内存泄漏是比较常见的一种应用程序性能问题,一旦发生,则系统的可用内存和性能持续下降:最终将导致内存不足(OutOfMemory),系统彻底宕掉,不能响应任何请求,其危害相当严重.同时,Java堆(Heap)中大量的对象以及对象间之复杂关系,导致内存泄漏问题的探测和分析均比较困难,采用相应的辅助工具是很必要的. WebSphere应用服务器提供了系列针对内存问题的探测和分析诊断工具,这些工具可以帮助用户进行内存问题的及时探测,保证系统在发生OOM之前,用户可以在无须进行复杂分析的条件下,预知在其部…
一.简介 SystemTap是一个诊断Linux系统性能或功能问题的开源软件.它使得对运行时的Linux系统进行诊断调式变得更容易.更简单.有了它,开发者或调试人员不再需要重编译.安装新内核.重启动等烦人的步骤. 为了诊断系统问题或性能,开发者或调试人员只需要写一些脚本,然后通过SystemTap提供的命令行接口就可以对正在运行的内核进行诊断调试,以前需要的修改或插入调试代码.重新编译内核.安装内核和重启动等这些琐碎的工作完全消除.目前该工具并不支持对用户态应用的诊断调试,但是它们在以后会被添加…
1. 常用组合方式有如下几种: 用vmstat.sar.iostat检测是否是CPU瓶颈 用free.vmstat检测是否是内存瓶颈 用iostat.dmesg 检测是否是磁盘I/O瓶颈 用netstat检测是否是网络带宽瓶颈 ps -eo state,pid,cmd|grep "^D" 2.1 vmstat vmstat命令的含义为显示虚拟内存状态(“Viryual Memor Statics”),但是它可以报告关于进程.内存.I/O等系统整体运行状态. 它的相关字段说明如下: Pr…
Arthas是什么鬼? Arthas是一款阿里巴巴开源的 Java 线上诊断工具,功能非常强大,可以解决很多线上不方便解决的问题. Arthas诊断使用的是命令行交互模式,支持JDK6+,Linux.Mac.Windows 操作系统,命令还支持使用 tab 键对各种信息的自动补全,诊断起来非常利索. 这是它的官方网站: https://alibaba.github.io/arthas/index.html Github地址: https://github.com/alibaba/arthas A…
Arthas是什么鬼? Arthas是一款阿里巴巴开源的 Java 线上诊断工具,功能非常强大,可以解决很多线上不方便解决的问题. Arthas诊断使用的是命令行交互模式,支持JDK6+,Linux.Mac.Windows 操作系统,命令还支持使用 tab 键对各种信息的自动补全,诊断起来非常利索. 这是它的官方网站: https://alibaba.github.io/arthas/index.html Github地址: https://github.com/alibaba/arthas A…
笔记来源:尚硅谷JVM全套教程,百万播放,全网巅峰(宋红康详解java虚拟机) 同步更新:https://gitee.com/vectorx/NOTE_JVM https://codechina.csdn.net/qq_35925558/NOTE_JVM https://github.com/uxiahnan/NOTE_JVM 目录 3. JVM监控及诊断工具-GUI篇 3.1. 工具概述 3.2. JConsole 3.3. Visual VM 3.4. Eclipse MAT 3.5. JP…
笔记来源:尚硅谷JVM全套教程,百万播放,全网巅峰(宋红康详解java虚拟机) 同步更新:https://gitee.com/vectorx/NOTE_JVM https://codechina.csdn.net/qq_35925558/NOTE_JVM https://github.com/uxiahnan/NOTE_JVM 目录 1. 概述篇 1.1. 大厂面试题 1.2. 背景说明 1.3. 调优概述 1.4. 性能优化的步骤 1.5. 性能评价/测试指标 2. JVM监控及诊断工具-命令…
Arthas是什么鬼? Arthas是一款阿里巴巴开源的 Java 线上诊断工具,功能非常强大,可以解决很多线上不方便解决的问题. Arthas诊断使用的是命令行交互模式,支持JDK6+,Linux.Mac.Windows 操作系统,命令还支持使用 tab 键对各种信息的自动补全,诊断起来非常利索. 这是它的官方网站: https://alibaba.github.io/arthas/index.html Github地址: https://github.com/alibaba/arthas A…
天啦噜!原来Chrome自带的开发者工具还能这么用! (提升JS调试能力的10个技巧)   Chrome自带开发者工具.它的功能十分丰富,包括元素.网络.安全等等.今天我们主要介绍JavaScript控制台部分的功能. 我最早写代码的时候,也就是在JS控制台里输出一些服务器返回的内容,或者一些变量的值.但是后来通过一些深入的学习和了解,我发现Chrome的JS控制台原来还有这么多神奇的功能. 在这里我总结了一些特别有用的功能.要是你凑巧在Chrome里浏览这篇文章的话,现在就打开开发者工具,跟着…
MTR是Linux平台上一款非常好用的网络诊断工具,集成了traceroute.ping.nslookup的功能,用于诊断网络状态非常有用.能按要求对路由中所有节点进行批量测试 第一列(Host):IP地址和域名,按n键可以切换IP和域名第二列(Loss%):丢包率第三列(Snt):设置每秒发送数据包的数量,默认值是10 可以通过参数-c来指定第四列(Last):最近一次的PING值第五.六.七列(Avg.Best.Wrst):分别是PING的平均.最好.最差值第八列(StDev):标准偏差 三…
1.lsof 简介 lsof 是 Linux 下的一个非常实用的系统级的监控.诊断工具. 它的意思是 List Open Files,很容易你就记住了它是 “ls + of”的组合~ 它可以用来列出被各种进程打开的文件信息,记住:Linux 下 “一切皆文件”, 包括但不限于 pipes, sockets, directories, devices, 等等. 因此,使用 lsof,你可以获取任何被打开文件的各种信息. 只需输入 lsof 就可以生成大量的信息,因为 lsof 需要访问核心内存和各…
在做开源项目的时候,想传一个gif效果图上去.但是,要有连贯的动画效果.所以,就想到先录制视频,然后视频转gif.但是,用第三录屏软件总是不完美. 那么,怎么办呢? android4.4 提供了自带录屏工具,当然,没有应用入口,需要手机连接电脑,在电脑上用adb命令来启动. 命令如下: adb shell screenrecord /sdcard/circle.mp4 如果不晓得是啥意思,可以自己去搜索. 如下,启动命令后就开始录屏了.录屏有时间限制.最大有多长,我没有测.如你看到的,中途如果想…
ab命令原理 ab命令会创建很多的并发访问线程,模拟多个访问者同时对某一URL进行访问.它的测试目标是基于URL的,因此,既可以用来测试Apache的负载压力,也可以测试nginx.lighthttp.IIS等其它Web服务器的压力 ab命令对发出负载的计算机要求很低,既不会占用很多CPU,也不会占用太多的内存,但却会给目标服务器造成巨大的负载,因此是某些DDOS攻击之 必备良药,老少皆宜.自己使用也须谨慎.否则一次上太多的负载,造成目标服务器直接因内存耗光死机,而不得不硬重启,得不偿失. Ap…
http://www.cnblogs.com/Fooo/archive/2013/02/19/2916789.html 使用mssql自带的跟踪工具和分析工具 http://blog.csdn.net/dba_huangzj/article/details/8702293 对mssql统计列的操作…
DTrace的原理本系列文章详细地介绍了一个 Linux 下的全新的调式.诊断和性能测量工具 Systemtap 和它所依赖的基础 kprobe 以及促使开发该工具的先驱 DTrace 并给出实际使用例子使读者更进一步了解和认识这些工具. 本文是该系列文章之二,它详细地讲解了 DTrace 的原理.本系列文章之一讲解了 kprobe 的原理.编程接口.局限性和使用注意事项并给出实际使用示例帮助读者理解和认识 kprobe.本系列文章之三讲解了 Systemtap 的原理,以及 Systemtap…
kprobe 的原理.编程接口.局限性和使用注意事项 本系列文章详细地介绍了一个Linux下的全新的调式.诊断和性能测量工具Systemtap和它所依赖的基础kprobe以及促使开发该工具的先驱DTrace并给出实际使用例子使读者更进一步了解和认识这些工具. 本文是该系列文章之一,它讲解了kprobe的原理.编程接口.局限性和使用注意事项并给出实际使用示例帮助读者理解和认识kprobe.本系列文章之二讲解了DTrace以及Systemtap与DTrace比较.本系列文章之三讲解了Systemta…
C# 利用VS自带的WSDL工具生成WebService服务类   WebService有两种使用方式,一种是直接通过添加服务引用,另一种则是通过WSDL生成. 添加服务引用大家基本都用过,这里就不讲解了. 那么,既然有直接引用的方式,为什么还要通过WSDL生成呢? 因为通过WSDL生成,就只有一个.cs 文件,便于管理,更简洁. 一.生成步骤 1. 打开vs开发控制台, 如下图: 2. 在控制台中输入如下指令 wsdl /language:c# /n:Demo /out:d:/TestServ…
生产环境偶尔会出现一些异常问题,WinDbg或GDB是解决此类问题的利器.调试工具WinDbg如同医生的听诊器,是系统生病时做问题诊断的逆向分析工具,Dump文件类似于飞机的黑匣子,记录着生产环境程序运行的状态.本文主要介绍了调试工具WinDbg和抓包工具ProcDump的使用,并分享一个真实的案例.N年前不知谁写的代码,导致每一两个月偶尔出现CPU飙高的现象.我们先使用ProcDump在生产环境中抓取异常进程的Dump文件,然后在不了解代码的情况下通过WinDbg命令进行分析,最终定位到有问题…
win7自带的截图工具很好,很强大,比从网上下载的截图工具好用多了,很少会出现问题.但是它能不能像QQ截图工具一样可以使用快捷键呢?今天小编和大家分享下心得,希望能够给你的工作带来快捷. 工具/原料 win7自带截图工具 方法/步骤 第一步:点击左下角的“开始”图标,点击“所有程序”,如图所示 第二步:出现系统安装的所有程序的名字,找到“附件”--“截图工具”,如图所示 第三步:右键单击“截图工具”,选择“发送到”--“桌面快捷方式”,如图所示 第四步:在桌面上找到截图工具的图标,右键点击它,选…