- 博客(78)
- 资源 (1)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 性能测试之JVM概念认识
无论什么语言,在程序运行过程中,都需要对内存进行管理,要知道计算机/服务器的内存不是无限的。例如:C语言中需要对对象的内存负责,需要用delete/free来释放对象;那JAVA中,对象的内存管理是由JVM自动管理的。JVM是很有必要的了解认识的,因为在程序性能调优中极其重要的两个判断方向——运行时间和运行空间,都需要具备JVM的知识理解和工具使用,知其所以然才能无往不利JVM虚机机的历史和类型内存模型程序计数器程序计数器是一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号
2020-10-17 09:02:01
445
原创 MySQL用户管理的方法合集
总会用到MySQL的一些用户管理,权限分配,不经常用,总会记不清楚。整理一下,随用随取。也是一些常见的面试小点。我们的一些经常的需求:如何创建用户和密码修改用户密码开启用户远程访问给当前用户授权部分库/表的访问权限给当前用户授权所有库的访问权限新用户增删改1.创建用户:-- 创建指定IP可以登录的用户create user '用户名'@'IP' identified by '密码';-- 创建指定IP192.118.1.开头的用户create user '用户名'@'192.1
2021-02-02 21:46:15
188
原创 MySQL索引在什么情况下会失效
之前介绍了如何使用执行计划来对慢sql进行调优。之前介绍了索引如何提高查询速度。索引的失效,会大大降低sql的执行效率,日常中又有哪些常见的情况会导致索引失效?1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中num列没有n
2021-01-28 21:36:32
434
原创 MySQL的两种索引方法如何提高查询速度
MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度。索引方法Mysql的索引方法有两种,BTERR和HASH。散列表(Hash Table)和B+Tree 都是一些常用的数据结构,再数据结构前篇中介绍过一些,关于散列表和树的数据结构,后续也会在《数据结构后篇》中总结一下。HashHash索引如何提高查询速度Hash索引是将索引键通过Hash运算之后,将 Hash运算结果的 Hash 值和所对应的行指针信息存放于一个Hash表(可以是数组结构)中。那
2021-01-21 22:07:53
561
原创 面试要了解一些常用的数据结构前篇
学校里我们可能都学过数据结构,面试上数据结构和算法已然是必修课了,看了极客的数据结构,当然要比《算法导论》简单易懂。画个笔记,把数据结构和算法基础知识提炼总结一下。有个概念的认识多是有益的。也推荐大家去学习阅读下极客的数据结构与算法的文稿。数据结构概念数据结构就是指一组数据的存储结构。它是组织数据的一种方式。常见的数据结构数组(Array)链表(Linked List)栈(Stack)队列(Queue)跳表(Skip list)散列表(Hash)树(Tree)堆(Heap)图(Gr
2021-01-14 21:48:14
133
原创 测试的年终总结
不平凡的一年即将过去识分享其实可以让人养成持续学习,持续总结的习惯。习惯若不是最好的仆人,便就是最差的主人。总结一下2020的文章内容:性能测试系列性能测试基础场景设计和结果判断Jmeter使用说明性能指标入门篇监控模型建立服务器监控数据库监控Docker监控JVM监控GrafanaJVM分析VisualVM性能问题分析和调优数据库问题分析堆内存泄漏排查死锁问题排查JVM概念认识JVM分析VisualVM分析JVMArthas调优工具CPU瓶颈分析的思
2021-01-07 22:04:17
335
原创 HarmonyOS鸿蒙的测试体验
HarmonyOS 2.0手机开发者Beta公测招募,申请开发者账号,报名,就可以抢先体验。除了抢先体验,使用真机测试外,使用模拟器也可以尝试体验。那测试人员可以使用HVD和Cloud Test尝试体验一下下载工具DevEco Studio 2.0https://developer.harmonyos.com/cn/develop/deveco-studio当然开发平台上,除了开发者工具,还有开发者文档。使用HVD测试菜单栏-【Tools】-【HVD Manager】使用cloud t
2020-12-30 21:57:50
5198
原创 测试平台MeterSphere源码入门
前端代码结构├── package.json #Vue的模块依赖定义├── pom.xml #Maven前后端打包的定义与依赖├── public├── src #前端核心代码│ ├── assets #静态图片资源│ ├── business│ │ ├── App.vue #根组件│ │ ├── components #功能页面目录│ │ │ ├── api #接口测试│ │ │ ├── common #公共和主框架 │
2020-12-24 21:57:51
1571
原创 性能测试之Docker监控
微服务、大中台盛行的当下,容器化已经被广泛使用。在性能测试过程中,对容器的监控模型构建也是必不可少的。 我们性能测试监控模型的构建一直是围绕着Prometheus和Grafana来展开的。她们可以快速的构建我们性能测试的绝大多数的监控模型:已介绍搭建了数据库监控、服务器监控。思路是相同的,也可自行快速构建自己所需的监控模型。Docker容器监控效果图安装使用Prometheus和Grafana的安装,参阅上文安装启动cadvisorsudo docker run \--volume=/:
2020-11-17 22:10:34
132
原创 性能测试之JVM的监控Grafana
安装配置Grafana参考https://testerhome.com/articles/23629使用配置下载jmx_exporterhttps://github.com/prometheus/jmx_exporter创建jmx_exporter配置文件vim simple-config.ymllowercaseOutputLabelNames: truelowercaseOutputName: truewhitelistObjectNames: ["java.lang:
2020-11-12 22:33:12
477
1
原创 测试工具-慢sql日志分析工具pt-query-digest
pt-query-digest分析来自慢速日志文件,常规日志文件和二进制日志文件的MySQL查询。它还可以分析来自tcpdump的查询和MySQL协议数据。开启慢日志set global slow_query_log=on;set global slow_query_log_file='/data/logs/mysql/mysql_slow.log';下载安装yum install percona-toolkit-3.0.3-1.el7.x86_64.rpm下载地址:https:/
2020-11-10 21:21:14
365
原创 MeterSphere开发者手册
什么是 MeterSphereMeterSphere 是一站式的开源企业级持续测试平台, 涵盖测试跟踪、接口测试、性能测试、 团队协作等功能,兼容 JMeter 等开源标准,有效助力开发和测试团队充分利用云弹性进行高度可扩展的自动化测试,加速高质量的软件交付,推动中国测试行业整体效率的提升。下载安装第一步:准备一台主机准备一台不小于 8 G内存且可以访问互联网的 64位 Linux 主机。第二步:执行一键安装命令以 root 用户执行如下命令一键安装 MeterSphere:curl -
2020-11-06 16:40:06
3355
2
原创 性能测试之服务器监控和Prometheus推荐
服务器的监控,也是采用Prometheus和Grafana。可以监控服务器系统负载、CPU使用率、网络流量、磁盘使用率、磁盘读写速度、IO耗时、网络信息。效果图安装使用安装启动node_exporter配置修改prometheus.yml见上一篇安装使用说明:下载Grafana的Node Exporter仪表盘https://grafana.com/grafana/dashboards/8919导入仪表盘 Import dashboard 推荐简单了解Prometheus原理P
2020-11-03 11:09:16
171
原创 性能测试之场景设计和结果判断
性能测试目的简单来说:在复杂多变情况下,保证系统稳定百度百科说:评估系统的能力,测试中得到的负荷和响应时间数据可以被用于验证所计划的模型的能力,并帮助作出决策。识别体系中的弱点:受控的负荷可以被增加到一个极端的水平,并突破它,从而修复体系的瓶颈或薄弱的地方。系统调优:重复运行测试,验证调整系统的活动得到了预期的结果,从而改进性能。检测软件中的问题:长时间的测试执行可导致程序发生由于内存泄露引起的失败,揭示程序中的隐含的问题或冲突。验证稳定性(resilience)可靠性(reliabilit
2020-10-27 13:32:35
433
原创 性能测试之JVM的故障排查-死锁
死锁原因Java发生死锁的根本原因是:在申请锁时发生了交叉闭环申请。即线程在获得了锁A并且没有释放的情况下去申请锁B,这时,另一个线程已经获得了锁B,在释放锁B之前又要先获得锁A,因此闭环发生,陷入死锁循环。监控死锁VisualVM监控工具有明显线程死锁提醒,也可监控到发生死锁的线程、类、代码行数、数据类型。分析死锁VisualVM生成threaddump,查找死锁代码块内存地址VisualVM生成heapdump, 使用OQL查看被死锁对象的值和引用select heap.findO
2020-10-23 09:35:13
271
原创 性能测试之JVM的故障排查-堆内存泄漏
JVM异常说明(超链接) 一文中已介绍了,JVM每个运行时区域——程序计数器 、Java虚拟机栈、本地方法栈、Java堆、方法区、直接内存发生OutOfMemoryError的不同原因和不同错误信息。Java堆,是线程共享内存,几乎所有的对象实例以及数组都应在堆上分配。如下堆的内存泄漏错误也是我们常常遇到的java.lang.OutOfMemoryError: Java heap space工具VisualVM的介绍使用VisualVM排查堆内存泄漏查看GC老年代Old和年轻代Eden区在不断
2020-10-22 16:29:51
246
原创 性能测试之JVM的故障分析工具VisualVM
VisualVM 是随JDK一同发布的jvm诊断工具,通过插件可以扩展很多功能,插件扩展也是其精华所在。提供了一个可视界面,用于在Java应用程序在Java虚拟机上运行时查看有关Java应用程序的详细信息。此信息可用于对本地和远程应用程序进行故障排除以及对本地应用程序进行性能分析。使用Java VisualVM,可以生成和分析堆转储,跟踪内存泄漏,执行和监视垃圾回收以及执行轻量级内存和CPU性能分析。该工具对于调整,堆大小,脱机分析和事后诊断也很有用。使用方法启动cd <JDK_HOME&g
2020-10-21 09:10:51
191
原创 性能测试之Jmeter性能测试使用说明
JMeter安装1、下载地址:https://downloads.apache.org//jmeter/binaries/apache-jmeter-5.2.1.zip2、解压apache-jmeter-5.2.13、启动linux/mac启动:[1] cd apache-jmeter-5.2.1/bin [2] ./jmeter.shwindow启动:双击jmeter.bat目录介绍├── LICENSE License说明文件├── NOTICE 版权声明├── READ
2020-10-20 09:15:08
242
原创 性能测试之数据库监控与分析
性能测试过程中,数据库相关性能对系统的影响是不可小觑的。以Mysql为例,做一个简单介绍。影响数据库性能的因素服务器硬件mysql参数配置show variables like '%query_cache%'; 查询缓存show variables like '%read_buffer_size%';读入缓冲区大小show variables like '%max_connections%';连接数 show variables like &#
2020-10-19 23:07:44
642
原创 性能测试之常见性能指标
性能测试的性能指标有很多,我们需要看那些性能测试相关的指标有很多,HPS、RPS、PV、UV、IP、TPS、RT。对性能测试而言可以用TPS和RT来衡量一个系统的性能质量应该是够用的。HPS 每秒点击数RPS 每秒请求数PV 页面浏览量UV 独立访问者IP 独立IP数TPSTransactions Per Second每秒事务数RTResponse Time响应时间++基础而重要的理解++真正的TPS压力工具中的线程数和TPS并不会完全等于服务端的线
2020-10-19 22:48:02
2439
原创 性能测试之JVM场景异常说明和JVM分析工具
StackOverflowError和OutOfMemoryError是JVM里的两种Error。每个运行时区域——程序计数器、Java虚拟机栈、本地方法栈、Java堆、方法区、直接内存发生Error的原因和错误信息是不同的。不是所有的StackOverflowError和OutOfMemoryError都需要调整参数,要做到正确分析、合理调整 常见异常说明Java堆溢出关键错误信息java.lang.OutOfMemoryError:java heap space 排查思路检
2020-10-18 21:48:10
141
原创 性能测试之Docker监控
微服务、大中台盛行的当下,容器化已经被广泛使用。在性能测试过程中,对容器的监控模型构建也是必不可少的。 我们性能测试监控模型的构建一直是围绕着Prometheus和Grafana来展开的。她们可以快速的构建我们性能测试的绝大多数的监控模型:已介绍搭建了数据库监控、服务器监控。思路是相同的,也可自行快速构建自己所需的监控模型。Docker容器监控效果图安装使用Prometheus和Grafana的安装,参阅上文安装启动cadvisorsudo docker run \ --volum
2020-10-17 09:00:16
313
原创 性能测试-Grafana监控JVM
安装配置Grafana参考https://testerhome.com/articles/23629使用配置下载jmx_exporterhttps://github.com/prometheus/jmx_exporter创建jmx_exporter配置文件vim simple-config.ymllowercaseOutputLabelNames: truelowercaseOutputName: truewhitelistObjectNames: ["java.lang:ty
2020-10-10 20:42:37
1010
原创 性能测试之服务器监控-Prometheus使用
服务器的监控,也是采用Prometheus和Grafana。可以监控服务器系统负载、CPU使用率、网络流量、磁盘使用率、磁盘读写速度、IO耗时、网络信息。效果图安装使用安装启动node_exporter配置修改prometheus.yml见上一篇安装使用说明:下载Grafana的Node Exporter仪表盘https://grafana.com/grafana/dashboards/8919导入仪表盘 Import dashboard推荐简单了解Prometheus
2020-09-29 15:22:14
582
原创 性能测试之数据库监控与分析-Grafana+Prometheus+Mysql_exportor
使用到 Grafana+Prometheus+Mysql_exportor使用Prometheus和Grafana,可以快速的构建我们性能测试的绝大多数的监控模型:数据库监控、服务器监控、Jvm监控、Tomcat监控、Mq监控、Redis监控、Consul监控、Haproxy监控、Nginx监控…(明天见…)构建正确和全链路的监控模型,是性能测试工作中必须的工作,也是性能测试的基础。搭建性能测试Mysql监控模型效果图安装Mysqld_exporter在需要监控的数据库服务器安装#下载.
2020-09-26 15:52:27
839
1
原创 性能测试之数据库监控与分析-PMM使用
PMM(Percona Monitoring and Management)是一个用于管理和监控数据库性能的开源平台。 。 它能提供全面的基于时间和各类监控指标、计数器的分析。性能测试中,是做数据库监控的较好工具。官网https://www.percona.com/doc/percona-monitoring-and-management/index.html支持的数据库mysql、mongodb、postgresql原理分析以mysql为例,整个工作的基本原理简单说:PMM-Cl
2020-09-22 11:35:26
687
原创 性能测试之数据库监控与分析(1)
性能测试过程中,数据库相关性能对系统的影响是不可小觑的。以Mysql为例,做一个简单介绍。影响数据库性能的因素服务器硬件mysql参数配置 show variables like '%query_cache%'; 查询缓存 show variables like '%read_buffer_size%';读入缓冲区大小 show variables like '%max_connections%';连接数 show variables like '%tmp_table_size%';临
2020-09-20 16:13:28
322
原创 测试工具-代码工具 EasyCode
写Java代码,增删改查,最无趣而又最基础。那机器人就来了,帮你写,减少你的基础的无趣的工作。推荐两个代写代码的神奇工具Mybatis-generator与EasyCode。这两款软件的数据库持久层都选用的Mybatis框架。EasyCodeEasycode是idea的一个插件。可以直接对数据的表生成entity,controller,service,dao,mapper,无需任何编码,简单而强大。下载安装创建数据库链接右击使用4. 模板修改mybatis-gene
2020-09-13 17:03:29
276
转载 从单体架构迁移到微服务,8个关键的思考、实践和经验
随着微服务架构的持续火热,网络上针对微服务和单体架构的讨论也是越来越多。去年的时候,社区更多的关注点是在二者的区别以及优缺点辨析上,而今年,越来越多的人开始关注如何从单体架构迁移到微服务上。毋庸置疑,微服务的理念正在席卷整个开发者社区,像Netflix、Uber这样的公司都是非常成功的应用案例。但需要注意的是,实施微服务,也需要付出额外的代价,Martin曾经就说过,除非面对的是一个过于复杂以
2016-08-16 17:22:07
3704
原创 Docker介绍 安装 常用工具
简介:Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机)、bare metal、OpenStack 集群和其他的基础应用平台。Docker是一个集装箱Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔记本
2016-08-04 11:42:37
621
原创 齐博建站指南
齐博建站指南使用手册http://www.qibosoft.com/help/ /template/default/list_tpl1、新建风格:template/XXX data/style 下新建XXX.php2、需要全部静态的话,需要录入php标识的头尾3、加载list模块
2016-07-25 15:23:08
1143
原创 html5多媒体格式支持
音频播放上只能支持mp3 wav视频播放只能支持 mp4(MPEG4标准) flv webm ogg swf音频:amr...不支持视频:rm,rmvb,avi,3gp,mov,wmv....不支持
2016-07-25 15:20:44
1065
原创 分布式文件系统FastDFS
当前比较流行的分布式文件系统包括:Lustre、Hadoop、MogileFS、FreeNAS、FastDFS、NFS、OpenAFS、MooseFS、pNFS、以及GoogleFS。对比:GlusterFS:主要应用在集群系统中,具有很好的可扩展性。软件的结构设计良好,易于扩展和配置,通过各个模块的灵活搭配以得到针对性的解决方案。GoogleFS:性能十分好,可扩
2016-07-25 15:18:02
1656
原创 cobar数据库中间件详解,可解决数据库拆分和数据库高可用HA
cobar是基于MySQL的分布式数据库服务中间件下载地址:https://github.com/alibaba/cobarcobar的文档(在源码文件的doc目录中)写的还是比较详细的,使用前只需要仔细阅读:里面会介绍cobar的各个配置、cobar的集群部署、cobar对mysql的主备切换、cobar使用注意情况...这里对cobar的配置不做介绍,大
2016-06-02 12:05:31
1896
原创 mysql主从配置
1、数据库安装 版本可不一致;操作系统可不一致;2、主数据库配置文件配置:linux下是my.cnfwindow下是my.ini需要添加的配置:linux的配置请添加在[mysqld]中 ,请务添加在[mysqld_safe]下面否则会报错# 主从(主)数据库配置server-id=10log-bin=E:\data\mysql-log\mysql-bin.log
2016-05-27 17:29:47
444
原创 负载均衡知识全概要
LB--负载均衡在负载均衡集群中需要一个分发器,我们将其称之为Director,它位于多台服务器的上面的中间层,根据内部锁定义的规则或调度方式从下面的服务器群中选择一个以此来进行响应请求,而其分发的方式则是根据某个算法进行的。HA--高可用一、负载均衡的类型负载均衡可以采用硬件设备,也可以采用软件负载。商用硬件负载设备成本通常较高(一台几十万上百万很正常),
2016-05-23 17:15:56
673
原创 简述性能测试的重要概念,不谈公式
1. 背景在做性能测试的时候,很多人都用并发用户数来衡量系统的性能,觉得系统能支撑的并发用户数越多,系统的性能就越好;对TPS不是非常理解,也根本不知道它们之间的关系,因此非常有必要进行解释。2. 术语定义Ø 并发用户数:指的是现实系统中操作业务的用户,在性能测试工具中,一般称为虚拟用户数(Virutal User),注意并发用户数跟注册用户数、在线用户数有很大差别的,并发
2016-05-19 11:50:42
642
Linux下配置FTP_最全面,最准确
2013-09-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人