接着第一天的尾,继续来学习性能测试,上一次说到性能要大致经历哪些阶段,那么我们也来看下行业的做法:

  行业有两种做法,一个是TPC,另一个是SPEC;

  • TPC:指定业务类型,获得该指定业务的性能指标,也就是说TPC实际上是业务实际情况的实现效果,我们做性能一般都是TPC-C这种做法,但要注意一点,就是TPC跑的好系统不一定就好,因为这只是针对指定业务。
  • SPEC:针对硬件能力的概念,获得硬件在基本处理能力上的指标,一般SPEC越高,TPC的指标会越好(CPU和内存越大,能处理的业务越多)。

  最终可以通过TPC和SPEC的互换来做到系统性能的预估。(由于公司架构比较稳定和固化,通过单模块的性能情况预估同等配置下其它模块的性能)。仔细思考下,在我们性能测试中,我们有时候测试环境资源并不如线上资源多,那么如何在测试环境下获取生产环境的性能结果呢?实际上这里就用到了SPEC和TPC的互换。

  第一天讲解了部分性能的基本名词,其中负载也是比较容易混淆的,这里也来讲解下:负载实际上是多个客户端对服务器的请求,那么这里就会有负载用户的定义,有实际用户、在线用户、并发用户三种不同的区分;

  • 实际用户:系统注册用户,有可能访问系统的用户;
  • 在线用户:系统正在访问等待或者操作的用户;
  • 并发用户:针对某个业务逻辑的具体操作用户;

  实际用户>>在线用户>>并发用户,所以从这里我们可以知道负载量并不是简单的看用户数,而是通过业务量来计算才会更准确,为了应对现有的高业务量所以挺多同步业务转化成了异步业务(这个是架构的变化)。

  在很多公司,领导都会说你给我做一下性能压力测试,实际上外面挺多人认为性能就等同于压力测试,实际上是有很大区别的,下面来讲解下区分:

  实际上性能测试是包括负载测试和压力测试;下图就是概览图:我们平常做的性能测试实际上是负载测试。

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

  最终我们通过协议抓包是要知道业务是如何通过请求来实现与服务器的交互和验证的(当然这个比较难,基本上是自己写过才能比较清楚)。

  今天在扩展一点内容,跟下次课的知识有关,就是前端的基础知识->网页的组成,稍微介绍下网页的组成以及性能的优化建议:

  • HTML
  • CSS(优化在于格式,可以进行压缩和减少代码中多余无用的字符,减少字节大小)
  • JS(优化在于格式,可以进行压缩和减少代码中多余无用的字符,减少字节大小)
  • 图片(多张图片合并,然后根据位置切割,减少请求量和大小)

好啦,今天完啦,期待下一节课关于网站前端性能分析吧!

性能测试day02_后端网络协议架构的更多相关文章

  1. 网络基础之网络协议篇---CS架构--网络通信--osi 协议---套接字socket--粘包

    1 C\S 客户端/服务器架构: .硬件 C/S架构 (打印机) .软件 C/S 架构 互联网中处处是C/S架构 如黄色网站是服务端,你的浏览器是客户端(B/S架构也是C/S架构的一种) 腾讯作为服务 ...

  2. Go语言学习之9 网络协议TCP、Redis与聊天室

    主要内容 1. Tcp编程2. redis使用 1. Tcp编程 (1)简介       Golang是谷歌设计开发的语言,在Golang的设计之初就把高并发的性能作为Golang的主要特性之一,也是 ...

  3. 网络协议HTTP TCP/UDP 浏览器缓存 Restful(十)

    一 TCP网络协议 1 建立TCP连接:三次握手原则 客户端通过向服务器端发送一个SYN来创建一个主动打开,作为三次握手的一部分.客户端把这段连接的序号设定为随机数 A. 服务器端应当为一个合法的SY ...

  4. 网络协议学习笔记(九)CDN和数据中心

    概述 上一篇给大家介绍了DNS协议和HttpDns协议,现在给大家介绍一下CDN和数据中心相关的知识. CDN:你去小卖部取过快递么? 如果你去电商网站下单买个东西,这个东西一定要从电商总部的中心仓库 ...

  5. 基础笔记(三):网络协议之Tcp、Http

    目录 一.网络协议 二.TCP(Transmission Control Protocol,传输控制协议) TCP头格式 TCP协议中的三次握手和四次挥手 TCP报文抓取工具 三.HTTP(Hyper ...

  6. CCNA网络工程师学习进程(3)常规网络设计模型与基本的网络协议

        本节介绍分层的网络设计模型与基本的网络协议,包括ARP协议,ICMP协议和IP协议.     (1)三层网络架构: 一个好的园区网设计应该是一个分层的设计.一般分为接入层.汇聚层(分布层).核 ...

  7. linux网络协议

    网络协议 本章节主要介绍linxu网络模型.以及常用的网络协议分析以太网协议.IP协议.TCP协议.UDP协议 一.网络模型 TCP/IP分层模型的四个协议层分别完成以下的功能: 第一层 网络接口层 ...

  8. iOS网络协议 HTTP/TCP/IP浅析

    一.TCP/IP协议       话说两台电脑要通讯就必须遵守共同的规则,就好比两个人要沟通就必须使用共同的语言一样.一个只懂英语的人,和一个只懂中文的人由于没有共同的语言(规则)就没办法沟通.两台电 ...

  9. linux 网络协议分析---3

    本章节主要介绍linxu网络模型.以及常用的网络协议分析以太网协议.IP协议.TCP协议.UDP协议 一.网络模型 TCP/IP分层模型的四个协议层分别完成以下的功能: 第一层 网络接口层 网络接口层 ...

随机推荐

  1. dojo:如何显示ListBox风格的选择框

    常见的选择框控件:Selelct.FilteringSelect和ComboBox都是下拉框风格,而不是ListBox风格. dojo还提供了一个dijit.form.MultiSelect控件可以解 ...

  2. java项目发布

    一.使用eclipse把项目以war格式导出 二.把war文件放在tomcat的webapps中 三.在tomcat的conf文件夹里的server.xml进行配置: 在<Host>< ...

  3. Linux 高级文本处理命令

    1.2.1 cut命令 cut命令可以从一个文本文件或者文本流中提取文本列. cut语法 [root@www ~]# cut -d'分隔字符' -f fields     ## 用于有特定分隔字符 [ ...

  4. DOM confirm setTimeout url刷新

    console.log 输出框 alert 弹出框 confirm 确认框 // URL和刷新 location.href 获取URL location.href = "url" ...

  5. XE5 Android 开发实现手机打电话和发短信 [转]

    其实都可以通过intent和URI调用系统功能.Windows程序员可以理解成是ShellExecute.这个是万金油.可以有调用各种功能.后面会介绍. 1.短信息.很简单 方法a.不使用Intent ...

  6. js写法【3】

    var m=[]; m[m.length]=xx;//相当于push 对Repeat方法提供了8种写法做比较,这一点还是不错的.

  7. ALGO-145_蓝桥杯_算法训练_4-1打印下述图形

    记: 这里用到了printf("%*s%s%*s\n",n-i,"",arr,n-i,"");的写法, 其中%*s中的*代表该字符串s的个数 ...

  8. 【java】之深入理解JVM

    JVM规范定义的标准结构如下: 以上结构是JVM标准规范中定义的,但各厂家在实现时不一定会完全遵守, 1.JVM负责加载class文件并执行,因此,首先要掌握的是JDK如何将Java代码编译成clas ...

  9. python3实现多excel一键导入mysql

    转载:qq_37955852 一.实现场景. import excel files to mysql author:zxb 工作每个work经常会导入一到几十张不等的excel表,表少可以用navic ...

  10. Consul之:服务健康监测

    服务注册 - 服务进程在注册中心注册自己的位置.它通常注册自己的主机和端口号,有时还有身份验证信息,协议,版本号,以及运行环境的详细资料. 服务发现 - 客户端应用进程向注册中心发起查询,来获取服务的 ...