摘要:垃圾回收曲线,波峰和波谷一直上升。正常是波峰波谷在同一水平线上,可以想象如果程序继续运行下去,老年代内存回收后也不断上升,当达到老年代满了的时候,就会报内存溢出错误。 用jmap -histo pid去看堆内存的使用情况,或者用jmap -dump去dump堆内存,然后用MAT去分析dump下来的内
阅读全文
摘要:在程序中所有的数据都是以流的方式进行传输或保存的,程序需要数据的时候使用输入流读取数据当程序需要将一些数据保存起来的时候,就需要使用输出完成。InputStream和OutpuStream两个是为字节流设计的,用来处理自己流和二进制对象Reader和Writer为字符流(一个字符占两个字节),主要用
阅读全文
摘要:1 package IO; 2 3 import java.io.File; 4 import java.io.IOException; 5 6 public class FileDemo01 { 7 public static void main(String[] args) throws IOException { 8 9 // 在指定目录下创...
阅读全文
摘要:说线程之前先说进程,何为进程?进程就是正在进行中的程序.比如电脑同时在运行QQ进程、cmd进程、wps进程、飞秋进程等。在某一时刻,CPU只能执行一个程序,只是在做快速切换,我们肉眼看不出来。 比如:我有一些箱子,我一个人去搬,搬了一个又一个,很累,如果有5个人一起搬,就更快了5个人同时去搬都在一个
阅读全文
摘要:面向对象,其实是一种思考的思想,是一种思想,而这种思想它早期的思想是面向过程,通过不断的演化变成了现在的面向对象,思想有一个演变形式,早期是面向过程,现在是面向对象。 故事:把大象放进冰箱里,分几步?1、把冰箱门打开2、把大象放里面去,存储大象3、把冰箱关上从打开门到存储对象到关门,我们在强调过程(
阅读全文
摘要:1、需求测试:查看杯子的使用说明书,有不理解或者有歧义的地方提出来2、功能测试:杯子是否可以装水,能否装热水,能装多少热水,是否会漏水,用杯子是否可以喝水3、界面测试:查看杯子是否美观,是否符合大部分用户的审美4、易用性测试:使用杯子装水是否烫手,是否有防滑措施,杯子是否容易清洗,是否方便饮用,装冰
阅读全文
摘要:以手机端微信发送朋友圈为例,写一下该功能的测试点,有写的不好或者不全面的地方,欢迎大家多多指正。 拍摄照片上传(只上传照片,不上传文字)1、是否能拍摄照片上传,拍摄的照片是否能取消,拍摄中是否能取消拍摄2、拍摄的照片是否能进行编辑再上传,编辑后是否能取消3、拍摄完确定后的照片,能否删除4、上传照片最
阅读全文
摘要:public class WanshuDemo { //如果一个数正好等于它的因子之和,那么这个数就叫完数 public static void main(String[] args) { // 定义因子之和 System.out.println("1000以内的完数有:"); for (int i
阅读全文
摘要:public class Zhishu { public static void main(String[] args) { // 求100以内的质数个数 int count = 0;// 记录个数 boolean flag = true; for (int i = 2; i <= 100; i++
阅读全文
摘要:public class BubbleDemo {public static void main(String[] args) { int arr[]={1,3,5,7,2,4,6,8,9}; bubble(arr);} public static void bubble(int arr[]){ f
阅读全文
摘要:session在计算机中,尤其是在网络应用中,称为“会话机制”,Session对象存储特定用户会话所需的属性及配置信息,这样,当用户在应用程序的web页之间跳转时,存储在session对象中的变量将不会将不会丢失,而是在整个用户会话中一直存在下去,当用户请求来自应用程序的web页时,如果该用户还没有
阅读全文
摘要:性能测试其实测的就是接口的性能,不管是用工具录制还是自己写,都是围绕接口的,录制也是把接口录制下来而已,但是录制下来的脚本比较乱,会把很多相关的请求都录下来。 在这里我们手动写HTTP协议的get、post请求的接口 1.HTTP的GET请求 这里以访问百度为例,地址http://www.baidu
阅读全文
摘要:gc是垃圾回收,Java的垃圾回收分为年轻代回收和老年代回收,其中年轻代回收速度快,频率高,因为Java对象大多具有朝生夕灭的特性,Java对象都是new出来的,当new出很多对象的时候,年轻代很容易就满,满了就触发yong gc对没有引用指向的对象进行回收。但是会有一些对象连续被回收好几次之后还没
阅读全文
摘要:混合测试过程中,LR报超时错误。 分析:造成这种现象的原因有很多,可能是网络原因,但测试时用的是局域网,所以不可能是网络的问题。也可能是CPU使用过高导致服务器端负载过大,无法处理客户端的请求导致的,此时去检查应用服务器和数据库服务器的CPU,发现还没有达到60%,所以可以排除资源瓶颈问题(当时的测
阅读全文
摘要:在做单交易负载测试时,有的交易响应时间超出了指标值,在排除完测试环境等可能造成交易超时的原因后,去分析数据库问题。数据库用的是Oracle,对于Oracle数据库整体的性能问题, awr的报告是一个非常有用的诊断工具,于是采用Oracle自带的性能分析工具awr进行监控分析。 生成awr报告 1、
阅读全文
摘要:开始性能测试前需要了解的内容: 1、 项目具体需求是什么,为什么要做性能测试?哪些交易需要做性能测试?哪些场景需要做性能测试? 2、 指标:响应时间在多少秒以内,支持多少并发数,每支交易的tps是多少,总tps多少,稳定性交易总量要达到多少,事务成功率要达到多少,交易波动范围是多少,稳定运行时长是多
阅读全文
摘要:利用晚上时间跑个12小时稳定性,第二天发现TPS曲线图成了这个样子。 排查步骤: 1、观察TPS图发现,几乎每两个小时TPS掉一次坑,是周期性的,而且TPS有掉到0的现象。LR上也有失败的交易,猜想是TPS掉坑的时候交易才报错,因为之前测负载的时候并没有交易报错。 2、查看服务器日志,发现报连接池不
阅读全文
摘要:做接口性能测试时,单用户时响应时间是50ms左右,而测10个用户并发时响应时间达到了260ms,虽然没有超出指标(300ms),但正常情况下单用户和10个用户并发时响应时间不应该相差那么大。 排查步骤: 1、查看是否有资源瓶颈 重新压测该接口,观察应用服务器、数据库服务器、压力机资源使用情况,发现使
阅读全文
摘要:项目过程中发现,应用服务器经常会出现CPU使用率较高的情况,需要定位出具体代码问题。 1、用top命令,根据CPU使用率排序,找出消耗cpu最高的进程 2、找出该进程下消耗CPU最高的线程(命令:top -Hp pid) 3、将该进程转换成16进制 4、用jstack去dump线程栈(命令:jsta
阅读全文
摘要:最近做的稳定性测试,大概跑了2小时左右LR前端报请求超时、HTTP状态码为500错误,日志报java.lang.OutOfMemoryError:Java heap space错误,明显是堆内存溢出问题。 内存溢出原因:老年代满了就会自动触发fullgc进行垃圾回收,但是如果老年代里的对象回收不掉的
阅读全文