BUG的定位与分析思路】的更多相关文章

一般来说bug大多数存在于3个模块: 1.前台界面,包括界面的显示,兼容性,数据提交的判断,页面的跳转等等,这些bug基本都是一眼可见的,不太需要定位,当然也不排除一些特殊情况,本身数据传过来的时候就有问题,所以显示会出问题的情况(这个后面会说到). 2.后台程序,包括前台调用的接口,中间层缓存和转发数据,定时任务脚本异步处理数据,程序之间的相互调用等等,而这些bug往往都是不可见的,有可能在功能上体现,也有可能隐藏的深处不易发现,这时候就要通过一些辅助工具以及人工的判断去定位了. 3.数据库,…
CPU利用率异常的分析思路和方法交流探讨在生产运行当中,经常会遇到CPU利用率异常或者不符合预期的情况,此时,往往暗示着系统性能问题.那么究竟是核心应用的问题?是监控工具的问题?还是系统.硬件.网络层面的问题?在上线前的测试过程中,经常会遇到新版本应用的CPU占用率比旧版本高,那么到底是新增的或者变更的什么模块导致呢?面对这种情况,我们应该如何定位和诊断问题的根本原因? 本期专题讨论会分享采用什么样的分析思路.分析方法和分析工具进行CPU使用情况的分析:并帮助大家解答以下问题: 1. CPU利用…
i春秋作家:HAI_ 原文来自:https://bbs.ichunqiu.com/thread-41371-1-1.html 说明 拿到一个CreakeMe,写一个分析思路.CreakMe主要是对.so文件内容进行分析,当然很多学习Android逆向的在分析到smali代码的时候就已经停止脚步了.在接触到.so文件的时候才是开始进一步的逆向学习,当然这里就要学习ARM汇编了.关于ARM汇编在网上有很多的资料,这里就不再赘述. 导航 请使用:HAI手册 0×01 分析逻辑 1.初始界面 2.输入数…
导读:Java多线程开发给程序带来好处的同时,由于多线程程序导致的问题也越来越多,而且对问题的查找和分析解决对于菜鸟程序原来是是件头疼的事.下面我就项目中使用多线程开发程序过程中遇到的问题做详细的分析和解决思路的分享.本人也属菜鸟,忘大神指点. 项目描述: 工作中要编写一份程序用于爬取某某网站上的大量图片.从HBase里面遍历出所有的爬取任务,开启固定大小的线程池Executors.newFixedThreadPool(100),提交线程,线程每个线程做的事情是使用FileUtils.copyU…
1 问题描述 因产品架构的复杂性,可能会导致性能问题的因素有很多.根据部署架构,大致的可以分为应用端瓶颈.数据库端瓶颈.环境瓶颈三大类.可以根据瓶颈的不同部位,选择相应的跟踪工具进行跟踪分析. 应用层面瓶颈大致有如下两类,一是应用服务端复杂的逻辑处理导致应用端代码执行慢:二是资源锁争用导致线程阻塞问题(最典型的特征是线程状态为"java.lang.Thread.State: BLOCKED (on object monitor)")等. 数据库层面瓶颈表现出来的现象都是SQL执行慢,其…
上一篇介绍了性能问题分析的诊断的基本过程,还没看过的可以先看下[性能测试]常见的性能问题分析思路-道与术,精炼总结下来就是,当遇到性能问题的时候,首先分析现场,然后根据现象去查找对应的可能原因,在通过对应的方法和工具去定位问题. 本篇来给出个具体实际工作中的案例,以及会简单说一下一种性能分析工具的使用技巧,加深这方面的认知和学习. 案例分析 背景 对某个项目(内部项目脱敏)进行压测的时候出现了内存泄漏的问题,经过发现问题-分析现象和过程-定位问题,排查出根因是定时任务引发的内存泄漏,因此把整个分…
enode框架step by step之框架要实现的目标的分析思路剖析1 enode框架系列step by step文章系列索引: 分享一个基于DDD以及事件驱动架构(EDA)的应用开发框架enode enode框架step by step之事件驱动架构(EDA)思想的在框架中如何体现 enode框架step by step之saga的思想与实现 本文想介绍一下enode框架要实现的目标以及部分实现分析思路剖析.总体来说enode框架是一个基于cqrs架构和消息驱动的应用开发框架.在说实现思路之…
Android BroadcastAnyWhere(Google Bug 17356824)漏洞具体分析 作者:简行(又名 低端码农) 继上次Android的LaunchAnyWhere组件安全漏洞后,近期Google在Android 5.0的源代码上又修复了一个高危漏洞.该漏洞简直是LaunchAnyWhere的姊妹版--BroadcastAnyWhere. 通过这个漏洞,攻击者能够以system用户的身份发送广播.这意味着攻击者能够无视一切的BroadcastReceiver组件訪问限制.并…
http://www.devba.com/index.php/archives/6157.html  Android闪屏问题的分析思路 作者:孤风一剑   发布:2015-01-22 12:35   栏目:移动开发   点击:2,114次   评论关闭     闪屏问题作为Android的一类常见问题,原因复杂多样.我们在这里整理一下如何分析闪屏问题,找到具体导致闪屏问题的原因. 严格从技术来说,闪屏问题不能归为一类问题,他是因为屏幕快速变化导致用户看起来显示不正常的问题(很多测试者甚至会将花屏…
本文章为SPSSAU数据分析思维培养的第3期文章. 上文讲解如何选择正确的分析方法,除了有正确的分析方法外,还需要把分析方法进行灵活运用.拿到一份数据,应该如何进行分析,总共有几个步骤,第一步第二步应该做什么,需要有个宏观把控,只有这样才能有规范的研究科学的思维和逻辑.   本文章首先阐述数据的整体思维,即整体把控住应该如何剖析一份数据做到心理有数,接着针对常见的问卷进行思维剖析,并且提供思路框架,期许为大家带来一丝丝帮助. 第一部分 把控数据思维 如果想要把控好数据思维,简单来讲在拿到一份数据…
本文章为SPSSAU数据分析思维培养的第3期文章. 上文讲解如何选择正确的分析方法,除了有正确的分析方法外,还需要把分析方法进行灵活运用.拿到一份数据,应该如何进行分析,总共有几个步骤,第一步第二步应该做什么,需要有个宏观把控,只有这样才能有规范的研究科学的思维和逻辑. 本文章首先阐述数据的整体思维,即整体把控住应该如何剖析一份数据做到心理有数,接着针对常见的问卷进行思维剖析,并且提供思路框架,期许为大家带来一丝丝帮助. 第一部分 把控数据思维 如果想要把控好数据思维,简单来讲在拿到一份数据后如…
验证性因子分析,是用于测量因子与测量项(量表题项)之间的对应关系是否与研究者预测保持一致的一种研究方法.尽管因子分析适合任何学科使用,但以社会科学居多. 目前有很多软件都可以非常便利地实现验证性因子分析,本文将基于SPSSAU系统进行说明. 验证性因子分析 Step1:因子分析类型 因子分析可分为两种类型:探索性因子分析(EFA)和验证性因子分析(CFA). 探索性因子分析,主要用于浓缩测量项,将所有题项浓缩提取成几个概括性因子,达到减少分析次数,减少重复信息的目的. 验证性因子分析与探索性因子…
原文链接:线上BUG:MySQL死锁分析实战 1 线上告警 我们不需要关注截图中得其他信息,只要能看到打印得org.springframework.dao.DeadlockLoserDataAccessException就足够了,就是MySQL发生死锁导致服务抛异常. 关于接口得逻辑,可以大概描述为:C端调用接口查询店铺得追踪事件列表,如果查询为空列表则顺便给初始化,这里的初始化是批量插入一批事件追踪列表,然后再返回,这里要给到一个关于表的信息点:这个表有主键索引和唯一索引. 1.1 云日志&死…
Redis作为内存数据库,拥有非常高的性能,单个实例的QPS能够达到10W左右.但我们在使用Redis时,经常时不时会出现访问延迟很大的情况,如果你不知道Redis的内部实现原理,在排查问题时就会一头雾水. 很多时候,Redis出现访问延迟变大,都与我们的使用不当或运维不合理导致的. 这篇文章我们就来分析一下Redis在使用过程中,经常会遇到的延迟问题以及如何定位和分析. 使用复杂度高的命令 如果在使用Redis时,发现访问延迟突然增大,如何进行排查? 首先,第一步,建议你去查看一下Redis的…
[jvm]09-full gc分析思路 欢迎关注b站账号/公众号[六边形战士夏宁],一个要把各项指标拉满的男人.该文章已在github目录收录. 屏幕前的大帅比和大漂亮如果有帮助到你的话请顺手点个赞.加个收藏这对我真的很重要.别下次一定了,都不关注上哪下次一定. gitee目录 博客园目录 可直接运行的完整代码 视频讲解 上一篇 1.命令界面 1.1.Jmap堆命令 jmap -histo:live {pid} | head -13 num:序号 instances:实例数量 bytes:占用空…
Redis作为内存数据库,拥有非常高的性能,单个实例的QPS能够达到10W左右.但我们在使用Redis时,经常时不时会出现访问延迟很大的情况,如果你不知道Redis的内部实现原理,在排查问题时就会一头雾水. 很多时候,Redis出现访问延迟变大,都与我们的使用不当或运维不合理导致的. 这篇文章我们就来分析一下Redis在使用过程中,经常会遇到的延迟问题以及如何定位和分析. 使用复杂度高的命令 如果在使用Redis时,发现访问延迟突然增大,如何进行排查? 首先,第一步,建议你去查看一下Redis的…
思路:结合Linux和JDK命令一起分析 1.用top命令找出CPU占比最高的进程 2.ps -ef|grep java|grep -v grep 或者jps -l进一步定位,得知是怎样一个后台程序惹事 3.定位到具体线程:ps -mp 进程编号 -o THREAD,tid,time ps -mp 4618 -o THREAD,tid,time -m:显示所有线程 -p pid:进程使用CPU的时间 -o:用户自定义格式 4.将需要的线程ID转换为16进制格式:printf "%x\n"…
1. 获取需要的binlog 日志: [root@zjzc01 binlog]# mysqlbinlog --start-datetime='2016-08-01 00:00:00' --stop-datetime='2016-08-11 12:00:00' mysql-bin.00006* >a.txt 2.获取对应行的记录 匹配 update ProductAccess [root@zjzc01 binlog]# cat get_num.pl open (A,"<",&…
什么是内存泄漏 对于不同的语言平台来说,进行标记回收内存的算法是不一样的,像 Android(Java)则采用 GC-Root 的标记回收算法.下面这张图就展示了 Android 内存的回收管理策略(图来自Google 2011的IO大会) 图中的每个圆节点代表对象的内存资源,箭头代表可达路径.当圆节点与 GC Roots 存在可达路径时,表示当前资源正被引用,虚拟机是无法对其进行回收的(如图中的黄色节点).反过来,如果圆节点与 GC Roots 不存在可达路径,则意味着这块对象的内存资源不再被…
[问题] 最近查看MySQL的error log文件时,发现有很多服务器的文件中有大量的如下日志,内容很长(大小在200K左右),从记录的内容看,并没有明显的异常信息. 有一台测试服务器也有类似的问题,为什么会记录这些信息,是谁记录的这些信息,分析的过程比较周折. Status information: Current dir: Running threads: 2452  Stack size: 262144 Current locks: lock: 0x7f783f5233f0: Key c…
OllyDbg 操作菜单栏.工具栏.快捷键 C++调用加强 目录 OllyDbg 操作菜单栏.工具栏.快捷键    1 一.    载入观察    1 1.静态载入观察:    1 2.OD动态观察    1 二.    初步尝试下断查找目标    1 1.如何下断    1 2.接下来有两个选择:    1 2.1手动F9运行目标    1 2.2设条件断点    1 2.3 CALL调用时堆栈小解    1 3.初步断点目标 (条件触发情况)    1 三.调用栈回溯    1 1.回溯到无…
概念 利用蛋白质组学数据,结合基因组数据(DNA).转录组数据(RNA)来研究基因组注释问题,被称为蛋白质基因组学."蛋白质基因组学"一词由Jaffe 等于2004 年首次提出,作者采用串联质谱数据匹配DNA翻译得到氨基酸序列的方法,在仅有810 kb 大小的细菌基因组上直接鉴定开放阅读框(open reading frame,ORF),验证并补充.修订了约10%的ORF.后来这种质谱数据结合DNA 和RNA 数据的分析方法被应用到注释病毒基因组.原核生物基因组以及真核生物基因组. 本…
1. 前言 工作中有可能遇到 java.lang.OutOfMemoryError: Java heap space 内存溢出异常, 本文提供一些内存溢出的分析及解决问题的思路. 常见异常如下: 2022-01-31 16:07:29.639 ERROR 1981 --- [http-nio-8080-exec-4] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet]…
在上一篇中,我们介绍了Ext3文件系统的日志可以看做一个文件,由JBD进行管理.自然而然引出如下这些问题: 1)如何定位ext3日志文件和查看日志文件的裸数据? 2)ext3日志文件数据在物理上是如何布局的? 3)JBD如何利用日志文件进行数据恢复? 带着这些问题,开始这次探索之旅. JBD日志定位 首先找到ext3 日志文件的inode / # /dumpe2fs /dev/sda1 dumpe2fs 1.42 (29-Nov-2011) Filesystem volume name: sho…
1.为什么会发生内存泄漏 java 如何检测内在泄漏呢?我们需要一些工具进行检测,并发现内存泄漏问题,不然很容易发生down机问题. 编写java程序最为方便的地方就是我们不需要管理内存的分配和释放,一切由jvm来进行处理,当java对象不再被应用时,等到堆内存不够用时,jvm会进行垃圾回收,清除这些对象占用的堆内存空间,如果对象一直被应用,jvm无法对其进行回收,创建新的对象时,无法从Heap中获取足够的内存分配给对象,这时候就会导致内存溢出.而出现内存泄露的地方,一般是不断的往容器中存放对象…
转自:http://blog.csdn.net/x_i_y_u_e/article/details/51137492 1.为什么会发生内存泄漏 java 如何检测内在泄漏呢?我们需要一些工具进行检测,并发现内存泄漏问题,不然很容易发生down机问题. 编写java程序最为方便的地方就是我们不需要管理内存的分配和释放,一切由jvm来进行处理,当java对象不再被应用时,等到堆内存不够用时,jvm会进行垃圾回收,清除这些对象占用的堆内存空间,如果对象一直被应用,jvm无法对其进行回收,创建新的对象时…
趁着周末,大好的日子,总结了一下外显子分析的思路(套路)…
概述 重定位(relocate)代码将BootLoader自身由Flash复制到SDRAM,以便跳转到SDRAM执行.之所以需要进行重定位是因为在Flash中执行速度比较慢,而系统复位后总是从0x00000000地址取指. 重定位代码,位于/U-Boot/cpu/s3c44b0/start.S : relocate: adr r0, _start ldr r1, _TEXT_BASE cmp     r0, r1 beq     stack_setup ldr r2, _armboot_star…
1.  起因 前两天我公布了一个京东微信端截取到的三张图.并简单阐述了这三张图中的bug发现过程: 有朋友的评价是图中这种,可实际上.他应该是没有看出来这个bug代表的内容有多少.今天心血来潮决定具体写一下.展现一下老程序猿的酸腐气质! 2.  过程详述 京东微信端能够签到获取金币,每天一次一个金币,结果没有不论什么提醒,签到积累30金币的时候就不能签到了,我一直不知道怎么回事. 这一天决定兑换一下这种100-10的券.由于提示是早上9点開始,此前9点多点击.都没有抢到,我仅仅是认为奇怪. 今天…
转自:http://cizixs.com/2018/01/13/linux-udp-packet-drop-debug?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io 最近工作中遇到某个服务器应用程序 UDP 丢包,在排查过程中查阅了很多资料,总结出来这篇文章,供更多人参考. 在开始之前,我们先用一张图解释 linux 系统接收网络报文的过程. 首先网络报文通过物理网线发送到网卡 网络驱动程序会把网络中的报文读出来放到…