自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 Pycharm远程开发配置

Pycharm远程开发配置

2023-01-10 09:36:18 261

原创 性能优化的原则

性能优化的六大原则与七大策略

2022-06-07 20:29:18 239

原创 敏捷测试的“三板斧“

什么是三板斧可灰度:任何变更,都必须是可以灰度的,即控制变更的生效范围.先做小范围变更,验证通过之后才扩大范围 可监控:在灰度的过程中,必须能做到可监控,能了解到变更之后对系统的应用 可回滚:当通过监控发现变更后会引发问题时,还需要有方法可以回滚"三板斧"测试发力点可灰度--- 灰度测试 内灰:其实就是把先功能在特定的环境下,特定的用户群体(产品,测试及一些公司内部人员)先行使用. 外灰:让一部分真实用户先行使用(类似于给一部分特定用户推内测版本),当这部分人使用过后没有发现问题,在推

2022-05-26 16:42:58 1389

原创 什么是敏捷测试

敏捷测试应该是一套管理方案,一套框架,一种实践,或者说是一种配合着敏捷开发,力求达到效率和平衡的一系列的测试实践.

2022-05-19 18:52:57 460

原创 字典和集合

相较于列表和元组,字典的性能更加快,特别在于其增加,修改,删除等操作.字典都能快速完成.而集合与字典的区别主要在于,集合没有键和值的配对.是一个无序的.唯一的元素组合.创建字典d1 = {"name": "wp", "age": 18}d2 = dict({'name': "wp", "age": 18})d3 = dict([("name", "wp"), ("age", 18)])d4 = dict(name="wp", age=18)if d1 == d2 == d3 == d4:

2021-09-18 16:29:12 206

原创 列表和元组的区别

首先先看一下列表和元组的概念# 既可以装int也可以装stringl = [1,2,"22","33"]t = (1,2,"22","33")列表和元组,都是一个可以放置任意数据类型的有序集合 列表:长度不固定,可以随意增加,删除或改变 元组:长度固定,无法增加,删除或改变改变元素# 既可以装int也可以装stringl = [1, 2, "22", "33"]t = (1, 2, "22", "33")if __name__ == '__main__': l[3]

2021-09-17 10:28:12 1121

原创 Linux网络

linux的网络模型TCP/IP网络模型:应用层,传输层,网络层,网络接口层应用层:负责像用户提供一组应用层序,必须http,ftp,dns等 传输层:负责端到端的通信,比如TCP,UDP等 网络层:负责网络包的封装,寻址和路由,比如IP,ICMP等 网络接口层:负责网络包再物理网络中的传输,比如MAC寻址,错误侦测以及通过网卡传输网络帧等OSI模型与TCP/IP模型的区别Linux网络栈 再进行网络传输的时候,数据包会按照协议栈,对上一层发来的数据...

2021-09-10 14:59:14 75

原创 从0开始学java!day1

1:变量的概念 y = x + 10; // 整数10是不可以发生变化的 b = a + 6.6; // 小数常量6.6是不可以发生变化的 但是x,y是可以随时发生变化的 当y=12的时候,x就是2 当a=1的时候,b=7.6 所以得出的结论就是,像a,b,x,y这类的数据是可以随时发生变化的,我们称之为变量,也可以称为容器,但是该容器只能只能保存一个数据...

2021-09-08 18:17:31 50

原创 记一次性能测试经验总结

在最近的一次压测中,由于分别使用了Jmeter和阿里云的PTS,所以发现了些平时压测时的错误理解一直依赖对并发数而忽略是请求次数所以得到了不同的结果此图是我用jmeter压测的结果可以看出我的压测机的各项资源均处在合理的范围内,但是从服务端的监控中可以看出,活跃连接数刚好是500多点,但是最大并发连接数却直接飙升到了1400+.这不得不让我感到怀疑,我此次压测的并发到底是多少?在重新梳理过并发数和请求连接数的感念之后得到了一下的结果并发数:客户端向服务器发起请求,并建立了..

2021-08-30 19:12:49 165

原创 Linux文件系统工作原理

磁盘为系统提供了最基本的持久化存储而文件系统则在磁盘的基础上,提供了用来管理文件的树状结构索引节点和目录项文件系统,本身是对存储设备上的文件,进行组织管理的机制.组织方式不同,就会形成不同的文件系统,linux中一切皆文件,不仅普通的文件和目录,就连块设备\套接字]管道等,也都要通过统一的文件系统管理.为了方便管理,Linux文件系统为每个文件都分配了两个数据结构,索引节点和目录项.他们主要用来记录文件的元信息和目录结构.  索引节点    用来记录文件的元数据,比如:inode编号

2021-08-24 16:29:09 371

原创 Linux的I/O处理过程

文件系统是对存储设备上的文件,进行组织管理的一种机制,而linux再文件实现上,又抽象了一层虚拟文件系统VFS,它定义了一组,所有文件系统都支持的数据结构和标准接口对于应用程序来说,只需要跟VFS提供的统一接口交互,而不需要关系文件系统的具体实现,对于文件系统来说,只需要按照VFS的标准,就可以无缝支持各种应用程序.VFS内部又通过目录项\索引节点\逻辑块以及超级快等数据结构来管理文件.  目录项,记录了文件的名字,已经文件与其他目录项之间的目录关系  逻辑块:是由连续磁盘扇区构成的最小读写

2021-08-20 15:32:25 207

原创 内存回收与OOM

1\如何理解LRU内存回收  三种内存回收机制    1\基于LRU算法,回收缓存    2\基于swap机制,回收不常访问的匿名页    3\基于OOM机制,杀掉占用大量内存的进程    第一和第二中都是使用了LRU算法,回收掉不常访问的内存,LRU算法,实际上维护这两个双向链表(active,和inactive)    active记录活跃的内存页    inactive记录不活跃的内存页    越接近链表尾部,就表示内存页越不常访问,这样在内存回收时,就可以根据活跃进程

2021-08-20 13:49:05 197

原创 Flask原理

from flask import Flask, current_app""" 如果要使用flask的核心对象的话就要导入这个current_app a = current_app 此时current_app的类型是localproxy类型 flask里面有两个上下文,分别是,应用上下文和请求上下文 应用上下文:是对Flask的封装 Flask:核心对象,其作用是承载了一些核心的功能.如注册路由,试图函数等 App.

2021-08-19 18:41:24 170

原创 系统缓存优化

如何判断缓存对程序效率的提升? 缓存命中率:直接通过缓存获取数据的请求次数,占所有请求次数的百分比。  命中率越高,表示使用缓存带来的收益越高,应用程序的性能越好 缓存是现在所有高并发系统必须的核心模块,主要作用是把经常访问的数据,提前读入到内存中,这样下次读取时,可以直接从内存中读取,而不需要经过磁盘,从而加快应用程序的响应速度。  cachestat:提供了整个操作系统缓存的读写命中情况  cachetop:提供了每个进程的缓存命中情况 1、查看内核版本 uname -a 2

2021-08-19 18:40:48 141

原创 内存中的Buffer和Cache

这个界面包含了物理内存Mem和交换分区Swap的使用情况,其中包括以用内存、缓存、可用内存等。其中缓存是buffer和cache这两部分的总和。从字面意思理解,Buffer和Cache分别代表缓冲区和缓存的意思,二者都是数据再内存中的临时存储。  Buffers是内核缓冲区用到的内存,对应的是/proc/meminfo种得buffers值  Cache是内核页缓存和Slab用到的内存,对应的是/proc/meminfo种得Cache与SReclaimable之和Buffers是...

2021-08-19 18:39:16 691

原创 Jmeter分布式安装教程

从机配置:  server.rmi.port=1099  server.rmi.localport=1099  remote_hosts=本机ip(可以写localhost:1099)  server_port=1099主机配置:  remote_hosts=xxx(从机地址:1099)  server_port=1099启动从机:  ./jmeter-server -Djava.rmi.server.hostname=本地外网ip启动主机:  jme...

2021-08-19 18:38:22 175

原创 性能测试学习内容:平均负载

排查思路有监控的情况下,首先去看看监控大盘,看看有没有异常报警,如果初期还没有监控的情况我会按照下面步骤去看看系统层面有没有异常1、我首先会去看看系统的平均负载,使用top或者htop命令查看,平均负载体现的是系统的一个整体情况,他应该是cpu、内存、磁盘性能的一个综合,一般是平均负载的值大于机器cpu的核数,这时候说明机器资源已经紧张了2、平均负载高了以后,接下来就要看看具体是什么资源导致,我首先会在top中看cpu每个核的使用情况,如果占比很高,那瓶颈应该是cpu,接下来就要看看是什么进程导

2021-08-19 18:37:07 157

原创 influxdb:监控jmeter

修改influxdb配置,开启graphite[[graphite]]  enabled = true bind-address = ":6003"  database = "jmeter"  retention-policy = ""  protocol = "tcp"  batch-size = 5000  batch-pending = 10  batch-timeout = "1s"  consistency-level = "one"  separator =...

2021-08-19 18:35:58 194

原创 influxdb基本用法

查看所有的数据库  show databases查看所有的表  showmeasurements显示执行命令历史  history创建表和增加表数据(增加数据采用insert的方式,要注意的是 InfluxDB的insert中,表名与数据之间用逗号(,)分隔,tag和field之间用 空格分隔,多个tag或者多个field之间用逗号(,)分隔)  插入\创建 自增 表名 字段名 值 字段 值...

2021-08-19 18:34:43 993

原创 关于influxDB,修改过端口号无法连接的问题

再启动influxdb的时候,可能会遇到端口被占用等情况,此时便需要修改influx的配置文件来更换端口。但是当修改过influxdb.config文件的路径之后,再本地输入influx时发现,他所连接的端口并不是我所更改后的端口。当我输入show databases时,报401错。从网上找了一大堆资料,发现只需要再启动的时候输入指定端口即可:influx -host localhost -port 6086...

2021-08-19 18:33:58 1303

原创 Locust的安装和使用

1、安装locust  (1)打开cmd,输入pip install locust  (2)安装完成之后,输入locust --version来查看版本  PS:1、如果出现“非内部或外部命令。。。”表明文件的安装路径没有加入到环境变量中,注意:安装的路径不是python的文件路径。注意观察安装时的黄字提示。2、locust不支持python3.73、locust的使用  打开编辑器,导入from locust import HttpUser, TaskSet, task  ..

2021-08-19 18:33:08 890

原创 influxDB+telegraf+Chronograf安装教程

软件安装  Grafana:https://grafana.com/get安装influxdb:  下载:wget https://dl.influxdata.com/influxdb/releases/influxdb-1.7.6.x86_64.rpm  安装:yum localinstall influxdb-1.7.6.x86_64.rpm  启动:Systemctl start influxdb  查看是否启动:systemctl status influxdb  .

2021-08-19 18:31:23 985

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除