性能测试day02_后端网络协议架构
接着第一天的尾,继续来学习性能测试,上一次说到性能要大致经历哪些阶段,那么我们也来看下行业的做法:
行业有两种做法,一个是TPC,另一个是SPEC;
- TPC:指定业务类型,获得该指定业务的性能指标,也就是说TPC实际上是业务实际情况的实现效果,我们做性能一般都是TPC-C这种做法,但要注意一点,就是TPC跑的好系统不一定就好,因为这只是针对指定业务。
- SPEC:针对硬件能力的概念,获得硬件在基本处理能力上的指标,一般SPEC越高,TPC的指标会越好(CPU和内存越大,能处理的业务越多)。
最终可以通过TPC和SPEC的互换来做到系统性能的预估。(由于公司架构比较稳定和固化,通过单模块的性能情况预估同等配置下其它模块的性能)。仔细思考下,在我们性能测试中,我们有时候测试环境资源并不如线上资源多,那么如何在测试环境下获取生产环境的性能结果呢?实际上这里就用到了SPEC和TPC的互换。
第一天讲解了部分性能的基本名词,其中负载也是比较容易混淆的,这里也来讲解下:负载实际上是多个客户端对服务器的请求,那么这里就会有负载用户的定义,有实际用户、在线用户、并发用户三种不同的区分;
- 实际用户:系统注册用户,有可能访问系统的用户;
- 在线用户:系统正在访问等待或者操作的用户;
- 并发用户:针对某个业务逻辑的具体操作用户;
实际用户>>在线用户>>并发用户,所以从这里我们可以知道负载量并不是简单的看用户数,而是通过业务量来计算才会更准确,为了应对现有的高业务量所以挺多同步业务转化成了异步业务(这个是架构的变化)。
在很多公司,领导都会说你给我做一下性能压力测试,实际上外面挺多人认为性能就等同于压力测试,实际上是有很大区别的,下面来讲解下区分:
实际上性能测试是包括负载测试和压力测试;下图就是概览图:我们平常做的性能测试实际上是负载测试。

在预习课程中我们接触了协议,知道性能测试基本上都是模拟客户端基于协议的测试,那么下面大概总结下部分HTTP协议内容:

最终我们通过协议抓包是要知道业务是如何通过请求来实现与服务器的交互和验证的(当然这个比较难,基本上是自己写过才能比较清楚)。
今天在扩展一点内容,跟下次课的知识有关,就是前端的基础知识->网页的组成,稍微介绍下网页的组成以及性能的优化建议:
- HTML
- CSS(优化在于格式,可以进行压缩和减少代码中多余无用的字符,减少字节大小)
- JS(优化在于格式,可以进行压缩和减少代码中多余无用的字符,减少字节大小)
- 图片(多张图片合并,然后根据位置切割,减少请求量和大小)
好啦,今天完啦,期待下一节课关于网站前端性能分析吧!
性能测试day02_后端网络协议架构的更多相关文章
- 网络基础之网络协议篇---CS架构--网络通信--osi 协议---套接字socket--粘包
1 C\S 客户端/服务器架构: .硬件 C/S架构 (打印机) .软件 C/S 架构 互联网中处处是C/S架构 如黄色网站是服务端,你的浏览器是客户端(B/S架构也是C/S架构的一种) 腾讯作为服务 ...
- Go语言学习之9 网络协议TCP、Redis与聊天室
主要内容 1. Tcp编程2. redis使用 1. Tcp编程 (1)简介 Golang是谷歌设计开发的语言,在Golang的设计之初就把高并发的性能作为Golang的主要特性之一,也是 ...
- 网络协议HTTP TCP/UDP 浏览器缓存 Restful(十)
一 TCP网络协议 1 建立TCP连接:三次握手原则 客户端通过向服务器端发送一个SYN来创建一个主动打开,作为三次握手的一部分.客户端把这段连接的序号设定为随机数 A. 服务器端应当为一个合法的SY ...
- 网络协议学习笔记(九)CDN和数据中心
概述 上一篇给大家介绍了DNS协议和HttpDns协议,现在给大家介绍一下CDN和数据中心相关的知识. CDN:你去小卖部取过快递么? 如果你去电商网站下单买个东西,这个东西一定要从电商总部的中心仓库 ...
- 基础笔记(三):网络协议之Tcp、Http
目录 一.网络协议 二.TCP(Transmission Control Protocol,传输控制协议) TCP头格式 TCP协议中的三次握手和四次挥手 TCP报文抓取工具 三.HTTP(Hyper ...
- CCNA网络工程师学习进程(3)常规网络设计模型与基本的网络协议
本节介绍分层的网络设计模型与基本的网络协议,包括ARP协议,ICMP协议和IP协议. (1)三层网络架构: 一个好的园区网设计应该是一个分层的设计.一般分为接入层.汇聚层(分布层).核 ...
- linux网络协议
网络协议 本章节主要介绍linxu网络模型.以及常用的网络协议分析以太网协议.IP协议.TCP协议.UDP协议 一.网络模型 TCP/IP分层模型的四个协议层分别完成以下的功能: 第一层 网络接口层 ...
- iOS网络协议 HTTP/TCP/IP浅析
一.TCP/IP协议 话说两台电脑要通讯就必须遵守共同的规则,就好比两个人要沟通就必须使用共同的语言一样.一个只懂英语的人,和一个只懂中文的人由于没有共同的语言(规则)就没办法沟通.两台电 ...
- linux 网络协议分析---3
本章节主要介绍linxu网络模型.以及常用的网络协议分析以太网协议.IP协议.TCP协议.UDP协议 一.网络模型 TCP/IP分层模型的四个协议层分别完成以下的功能: 第一层 网络接口层 网络接口层 ...
随机推荐
- [转]使用 Angular CLI 和 ng-packagr 构建一个标准的 Angular 组件库
使用 Angular CLI 构建 Angular 应用程序是最方便的方式之一. 项目目标 现在,我们一起创建一个简单的组件库. 首先,我们需要创建一个 header 组件.这没什么特别的,当然接下来 ...
- HTTP请求回调IM系统LB,确保服务定向调用
1. 背景介绍 基于websocket的及时通信中,客户端与服务端建立ws连接后,服务端将业务继续传递到下一级业务服务系统Business server后,下一级服务系统处理完毕后,要将结果反馈给客户 ...
- piwik优化之定时任务生成统计数据
piwik的ui界面,使用起来是无比的慢,让苏南大叔不得不对比wordpress的使用体验.当然了,如果你的服务器足够强大,这些都是小事儿.官方对此给出了一系列的优化建议,大家可以读一下:https: ...
- Python打包文件夹的方法小结(zip,tar,tar.gz等)
本文实例讲述了Python打包文件夹的方法.分享给大家供大家参考,具体如下: 一.zip ? 1 2 3 4 5 6 7 8 9 10 11 import os, zipfile #打包目录为zip文 ...
- 超细讲解Django打造大型企业官网
本文为知了课堂黄勇老师讲的<超细讲解Django打造大型企业官网>的笔记. 第一章 Django预热 1.创建virtualenv虚拟环境 2.URL组成部分详解 3.Django介绍 4 ...
- c++中计算程序执行时间
#include<iostream> #include<time.h> using namespace std; int main() { clock_t t1 = clock ...
- Weka训练模型的存取
因为WEKA中所有分类器都实现了Serializable,所以只需要用java的ObjectOutputStream就可以实现了. /** * 存储model * * @param model * 训 ...
- sql语句事务
set xact_abort on begin tran ... commit tran
- 黄聪:is_file和file_exists效率比较
目前在弄文件缓存的时候用到了判定文件存在与否,is_file()还是file_exists()呢?is_file和file_exists两者效率比较起来,谁的运行速度更快呢?还是做个测试吧: 1 2 ...
- SpringSecurity的Filter执行顺序在源码中的体现
在网上看各种SpringSecurity教程时,都讲到了SpringSecurity的Filter顺序.但是一直不知道这个顺序在源码中是如何体现的.今天一步一步的查找,最终找到顺序是在FilterCo ...