摘要: #概述 线上故障通常是指大规模的影响线上服务可用性的问题或者事件,通俗点讲就是:掉‘坑’里了,这个‘坑’就是线上故障!线上故障的处理过程可以形象地表达为:‘踩坑’、‘跳坑’、‘填坑’、‘避坑’。 线上故障的处理不仅是一项技术活,更是对技术人员/技术团队反应能力、决策能力、判定能力、组织能力的考验。面 阅读全文
posted @ 2021-09-06 18:07 ···起风了 阅读(382) 评论(0) 推荐(0) 编辑
摘要: ###计划的必要性 在我们日常的工作和生活中,经常需要做计划。古人云:凡事预则立,不预则废(《礼记.中庸》),也就是强调预先计划的重要性和必要性。 我们做项目,项目需要定项目计划;测试作为项目中的一部分,当然也需要制定测试计划。 测试计划就像是我们写论文一样,首先做好提纲,才能一步一步的完善填充,有 阅读全文
posted @ 2021-09-06 16:25 ···起风了 阅读(646) 评论(0) 推荐(0) 编辑
摘要: ###1.什么是接口? 接口测试主要用于外部系统与系统之间以及内部各个子系统之间的交互点,定义特定的交互点,然后通过这些交互点来,通过一些特殊的规则也就是协议,来进行数据之间的交互。 ###2.接口都有哪些类型? 接口一般分为两种:1.程序内部的接口 2.系统对外的接口 系统对外的接口:比如你要从别 阅读全文
posted @ 2021-08-27 18:17 ···起风了 阅读(80) 评论(0) 推荐(0) 编辑
摘要: ###1 HTTP无状态协议和Connection:Keep-Alive容易犯的误区 HTTP无状态:无状态是指协议对于事务处理没有记忆能力,服务器不知道客户端是什么状态。从另一方面讲,打开一个服务器上的网页和你之前打开这个服务器上的网页之间没有任何联系。 优点:服务器不用为每个客户端连接分配内存来 阅读全文
posted @ 2021-08-26 17:37 ···起风了 阅读(53) 评论(0) 推荐(0) 编辑
摘要: DevOps 是一个完整的面向IT运维的工作流,以 IT 自动化以及持续集成(CI)、持续部署(CD)为基础,来优化程式开发、测试、系统运维等所有环节。 #DevOps的概念 DevOps一词的来自于Development和Operations的组合,突出重视软件开发人员和运维人员的沟通合作,通过自 阅读全文
posted @ 2021-08-26 17:22 ···起风了 阅读(7322) 评论(0) 推荐(0) 编辑
摘要: 五天前,张大胖负责的开发团队向运维部门交付了一批新代码,这是一次用户期待已久的重要升级,部署进行得非常顺利,大家都很高兴。 可是今天生产环境的CPU持续接近100%,有好几台服务器都down机了, 运维老大勃然大怒:“已经是第三次了! 张大胖,你们开发团队怎么搞的? 新代码一上线CPU就100%!” 阅读全文
posted @ 2021-08-26 14:35 ···起风了 阅读(178) 评论(0) 推荐(0) 编辑
摘要: ###为什么需要 HTTPS? 我们知道 HTTP 是一个纯文本传输协议,对传输过程中的数据包不进行加密,是明文传输,那这样的话对于介于在发送端和接收端之间的任何 一个节点都能知道传输的内容,这些节点可能是路由器、代理等。 一个比较常见的例子:用户完善个人信息。用户输入需要填写的资料,这些资料中可能 阅读全文
posted @ 2021-08-26 14:17 ···起风了 阅读(760) 评论(0) 推荐(0) 编辑
摘要: ###1.什么是 Git? Git 是一个版本控制系统。 版本控制是一种用于记录一个或多个文件内容变化,方便我们查阅特定版本修订情况的系统。 以前在没有使用版本控制的时候,我们通常在我们的项目根目录下这样命名项目: project_v1、project_v1.1、project_v2等等,通过这种方 阅读全文
posted @ 2021-08-26 11:00 ···起风了 阅读(470) 评论(0) 推荐(0) 编辑
摘要: 项目中用的是MongoDB,但是为什么用其实当时选型的时候也没有太多考虑,只是认为数据量比较大,所以采用MongoDB。 最近又想起为什么用MongoDB,就查阅一下,汇总汇总: 之前也用过redis,当时是用来存储一些热数据,量也不大,但是操作很频繁。现在项目中用的是MongoDB,目前是百万级的 阅读全文
posted @ 2021-08-25 17:02 ···起风了 阅读(693) 评论(0) 推荐(0) 编辑
摘要: #一、消息队列概述 消息队列中间件是分布式系统中重要的组件,主要解决应用解耦,异步消息,流量削锋等问题,实现高性能,高可用,可伸缩和最终一致性架构。目前使用较多的消息队列有ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ #二、消息队列应用场景 以下介绍消 阅读全文
posted @ 2021-08-24 18:06 ···起风了 阅读(182) 评论(0) 推荐(0) 编辑
摘要: #一、消息中间件相关知识 ###1、概述 消息队列已经逐渐成为企业IT系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能,成为异步RPC的主要手段之一。当今市面上有很多主流的消息中间件,如老牌的ActiveMQ、RabbitMQ,炙手可热的Kafka,阿里巴巴自主 阅读全文
posted @ 2021-08-24 17:27 ···起风了 阅读(1962) 评论(0) 推荐(0) 编辑
摘要: 从服务器会向主服务器发出SYNC指令,当主服务器接到此命令后,就会调用BGSAVE指令来创建一个子进程专门进行数据持久化工作,也就是将主服务器的数据写入RDB文件中。在数据持久化期间,主服务器将执行的写指令都缓存在内存中。 在BGSAVE指令执行完成后,主服务器会将持久化好的RDB文件发送给从服务器 阅读全文
posted @ 2021-08-24 16:41 ···起风了 阅读(97) 评论(0) 推荐(0) 编辑
摘要: ###【redis数据结构 – strings】 有人说,如果只使用redis中的字符串类型,且不使用redis的持久化功能,那么,redis就和memcache非常非常的像了。这说明strings类型是一个很基础的数据类型,也是任何存储系统都必备的数据类型。 我们来看一个最简单的例子: 字符串类型 阅读全文
posted @ 2021-08-24 16:12 ···起风了 阅读(43) 评论(0) 推荐(0) 编辑
摘要: redis是一种高级的key:value存储系统,其中value支持五种数据类型: 1.字符串(strings) 2.字符串列表(lists) 3.字符串集合(sets) 4.有序字符串集合(sorted sets) 5.哈希(hashes) 而关于key,有几个点要提醒大家: 1.key不要太长, 阅读全文
posted @ 2021-08-24 15:47 ···起风了 阅读(25) 评论(0) 推荐(0) 编辑
摘要: #模式类型 主从模式(redis2.8版本之前的模式)、哨兵sentinel模式(redis2.8及之后的模式)、redis cluster模式(redis3.0版本之后) #主从模式原理 同Mysql主从复制的原因一样,Redis虽然读取写入的速度都特别快,但是也会产生读压力特别大的情况。为了分担 阅读全文
posted @ 2021-08-24 14:47 ···起风了 阅读(139) 评论(0) 推荐(0) 编辑
摘要: #HTTP协议的特点: ###1、支持客户/服务器模式。 ###2、简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、POST、PUT、DELETE。每种方法规定了客户与服务器联系的类型不同。 ###由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很 阅读全文
posted @ 2021-08-24 14:18 ···起风了 阅读(187) 评论(0) 推荐(0) 编辑
摘要: ###QPS: Queries Per Second,顾名思义:“每秒查询率”,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。 ###TPS: 是TransactionsPerSecond的缩写,也就是事务数/秒。它是软件测试结果的测量单位。一个事 阅读全文
posted @ 2021-08-17 17:22 ···起风了 阅读(681) 评论(0) 推荐(0) 编辑
摘要: #1、环境准备 安装httprunner pip install httprunner -i https://pypi.douban.com/simple 使用hrun -V 查看httprunner版本,我的是3.1.4 查看帮助信息:httprunner --help positional ar 阅读全文
posted @ 2021-08-17 17:02 ···起风了 阅读(198) 评论(0) 推荐(0) 编辑
摘要: #1、什么是HttpRunner? HttpRunner 是一款面向 HTTP(S) 协议的通用测试框架,只需编写维护一份 YAML/JSON 脚本,即可实现自动化测试、性能测试、线上监控、持续集成等多种测试需求。 #2、安装HttpRunner #3、检查安装结果 4、几个重要的概念 ###4.1 阅读全文
posted @ 2021-08-17 11:46 ···起风了 阅读(32) 评论(0) 推荐(0) 编辑
摘要: ###一、安装httprunner 笔者自己安装的版本为2.5.7 安装命令: pip install httprunner==2.5.7 ###二、快速创建目录 hrun --startproject demo 其中demo为自己需要创建的项目名 阅读全文
posted @ 2021-08-17 11:24 ···起风了 阅读(60) 评论(0) 推荐(0) 编辑
摘要: 步骤: 1、新建一个空文件,文件名为hhhh 2、初始化 git init 3、自己要与origin master建立连接(下划线为远程仓库链接) git remote add origin git@github.com:XXXX/nothing2.git 远程仓库链接在github这里,如下图红色 阅读全文
posted @ 2021-08-16 18:28 ···起风了 阅读(2651) 评论(0) 推荐(0) 编辑
摘要: ###长连接: 长连接是相对于短连接来说的。长连接指在一个连接上可以连续发送多个数据包,在连接保持期间,如果没有数据包发送,需要双方发链路检测包。 mysql的长连接如果长期闲置,mysql会8小时后(默认时间)主动断开该连接。 ###短连接: 是指通讯双方有数据交互时,就建立一个连接,数据发送完成 阅读全文
posted @ 2021-08-16 15:45 ···起风了 阅读(403) 评论(0) 推荐(0) 编辑
摘要: ###变量命名规则如下: *可以由字母、数字、下画线(_)组成,其中数字不能打头。 *不能是 Python 关键字,但可以包含关键字。 *不能包含空格。 ###例如下面变量,有些是合法的,有些是不合法的: abc_xyz:合法。 HelloWorld:合法。 abc:合法。 xyz#abc:不合法, 阅读全文
posted @ 2021-04-28 13:54 ···起风了 阅读(1030) 评论(0) 推荐(0) 编辑
摘要: 问题描述: 安装mysql时报错: 由于找不到vcruntime140_1.dll,无法继续执行代码 解决方法: 这是缺少了动态链接库(.ddl文件), 跟mysql无关, 下载这个ddl文件即可。打开下载地址, 找到下载链接, 我下载的是64位版本的压缩包; 无法下载的朋友可以从网盘下载, htt 阅读全文
posted @ 2021-04-02 15:19 ···起风了 阅读(1550) 评论(0) 推荐(0) 编辑
摘要: 转自:https://www.cnblogs.com/imyalost/p/7117320.html ###负载 对被测系统不断施加压力,直到性能指标超过预期或某项资源使用达到饱和,以验证系统的处理极限,为系统性能调优提供依据; ###并发 ①狭义上的并发:所有用户在同一时间点进行同样的操作,一般指 阅读全文
posted @ 2021-02-23 14:55 ···起风了 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 转载于:https://www.cnblogs.com/imyalost/p/8309468.html ###先来解释下什么叫TPS: TPS(Transaction Per Second):每秒事务数,指服务器在单位时间内(秒)可以处理的事务数量,一般以request/second为单位。 ### 阅读全文
posted @ 2021-02-23 14:45 ···起风了 阅读(180) 评论(0) 推荐(0) 编辑
摘要: ##1.如何定位并优化慢查询sql ###a.根据慢日志定位慢查询sql SHOW VARIABLES LIKE '%query%' 查询慢日志相关信息 slow_query_log 默认是off关闭的,使用时,需要改为on 打开 slow_query_log_file 记录的是慢日志的记录文件 l 阅读全文
posted @ 2021-02-23 14:31 ···起风了 阅读(288) 评论(0) 推荐(0) 编辑
摘要: 例如: <json-viewer :value="jsonData" :expand-depth=1 copyable></json-viewer> ###1、先import JsonViewer from "vue-json-viewer"; ###2、定义组件 components: { Jso 阅读全文
posted @ 2021-01-22 21:01 ···起风了 阅读(7365) 评论(0) 推荐(0) 编辑
摘要: ###1.如果没有vue脚手架需先要安装脚手架 cnpm i @vue/cli -g ###2.利用脚手架创建项目 vue create myproject(项目名) ###3.创建完项目后,需手动在项目根目录创建vue.config.js # vue.config.js module.export 阅读全文
posted @ 2021-01-22 20:29 ···起风了 阅读(12261) 评论(0) 推荐(2) 编辑
摘要: vue-cli-service serve 'vue-cli-service' 不是内部或外部命令,也不是可运行的程序 或批处理文件。 1.安装npm包–rimraf npm install rimraf -g 2.在cmd指令下,进入所需删除的node_modules文件夹的位置,再输入指令 ri 阅读全文
posted @ 2021-01-11 20:41 ···起风了 阅读(3029) 评论(0) 推荐(1) 编辑
摘要: ##高阶函数 1.实参是一个函数名 2.函数的返回值是一个函数 ###1.abs: 求绝对值 def fun(a,b): return a + b a = fun(1,2) print(a) print(abs(-11)) 输出结果: 3 11 1 2 3 4 5 6 7 8 (1)函数本身也可以赋 阅读全文
posted @ 2021-01-07 10:46 ···起风了 阅读(157) 评论(0) 推荐(0) 编辑
摘要: <a-form-item label="切换环境"> <a-select v-decorator="[ 'env', { rules: [{ required: true, message: '该字段是必填字段' }] } ]" placeholder="请选择环境" > <a-select-opt 阅读全文
posted @ 2020-12-30 17:33 ···起风了 阅读(5635) 评论(0) 推荐(0) 编辑
摘要: ##一、环境搭建 1、安装node、npm、webpack,不多说 2、安装vue-cli脚手架构建工具,打开命令行工具输入:npm install vue-cli -g,安装完成之后输入 vue -V(注意这里是大写的“V”),如果出现相应的版本号,则说明安装成功。 ##二、用vue-cli来构建 阅读全文
posted @ 2020-11-30 20:58 ···起风了 阅读(400) 评论(0) 推荐(0) 编辑
摘要: <application> <name>test</name> <instance> <instanceId>test-6cd8b7f98b-k67zg:test:5000</instanceId> <hostName>192.168.9.243</hostName> <app>PLATFORM-O 阅读全文
posted @ 2020-11-27 21:46 ···起风了 阅读(1177) 评论(0) 推荐(0) 编辑
摘要: (1)安装prettier插件 yarn安装 yarn add prettier --dev --exact 或者全局安装 yarn global add prettier 或者npm(当然cnpm也可以) npm install --save-dev --save-exact prettier 或 阅读全文
posted @ 2020-11-11 23:45 ···起风了 阅读(1332) 评论(1) 推荐(0) 编辑
摘要: 1.安装node.js 从node.js官网下载并安装node 安装过程很简单,一直点下一步就ok了。 1.1我们通过打开命令行工具(win+R),输入node -v查看node的版本,若出现相应的版本号说明你安装成功了 1.2.npm包管理器,是集成在node中的,所以安装了node也就有了npm 阅读全文
posted @ 2020-11-11 20:32 ···起风了 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 在Python中,我们可以通过多种方法,从一个函数中返回多个值。下面本篇文章就来给大家介绍一下从一个函数中返回多个值的方法,希望对大家有所帮助。 方法一:使用Object 这类似于C / C ++和Java,我们可以创建一个类来保存多个值并返回该类的对象。 下面通过代码示例来看看一个函数中如何返回多 阅读全文
posted @ 2020-11-09 22:19 ···起风了 阅读(17609) 评论(1) 推荐(1) 编辑
摘要: 在loadrunner的虚拟用户中,术语concurrent(并发)和simultaneous(同时)存在一些区别,concurrent 是指虚拟场景中参于运行的虚拟用户。 而simultaneous与集合点(rendzvous point)关系更密切,是指在同一时刻一起执行某个任务的虚拟用户。 1 阅读全文
posted @ 2020-11-06 17:53 ···起风了 阅读(242) 评论(0) 推荐(0) 编辑
摘要: 1、新建txt文件(此处命名为data.txt),使用notepad++编辑。 第一行写下参数名,第二行开始,逐行写下参数各值,编码格式设置为UTF-8 2、在Pre-request Script中,获取参数值,并传到接口的参数中 var logistics_institution_id = dat 阅读全文
posted @ 2020-11-02 21:55 ···起风了 阅读(2018) 评论(0) 推荐(0) 编辑
摘要: #1. 搭建虚拟环境virtualenv的目的? 虚拟环境的作用是创建一个独立的python环境,将每一个应用的环境独立开来,解决了不同应用及多版本之间的冲突问题。在开发的日常中,我们会将python及配套的应用全部安装在电脑上,所创建的应用都是使用这一套环境,这就很容易出现不同应用之间环境冲突,也 阅读全文
posted @ 2020-10-29 11:17 ···起风了 阅读(295) 评论(0) 推荐(0) 编辑