·计算机操作系统:
·计算机由硬件和软件构成:
·硬件:CPU、内存、磁盘和网卡
CPU:是计算机的大脑,决定了计算机的处理速度。
一般来说,CPU处理任务是采取的串行方式--时间片轮转机制。
内存:是运行时存储,计算机在进行任务处理的时候,是需要有内存的。
磁盘:是永久存储,一般我们需要持久化的数据都会存储在磁盘中。
和实际测试牵涉比较多的是数据库和静态文件的读写。
网卡:决定了传输速度。
·软件:
·操作系统及系统软件:
通过操作系统,其它软件才能够去操作硬件。
一般来说,不论是windows还是linux,都提供了相应的系统软件(系统命令)来对系统进行相关的监控操作。
·应用软件:通常我们的应用软件一旦安装,则称之为服务器。
·计算机网络:
计算机本身是孤立的,计算机之间要进行通信,则需要有计算机网络的存在。
计算机网络就相当于是马路,是用来实现不同计算机之间的连接的,实现通信的。
关于计算机网络,大家需要了解和掌握两个基本的模型:
OSI模型:开放式系统互连模型,是由ISO组织定义的通信的参考模型。只定义了分层的概念、每一层要完成的工作,但是并没有定义每一层的实现接口。
OSI模型将网络通信分为七层:
·应用层:实现不同的应用的目的。
·表示层:实现数据格式、加密等处理的。
·会话层:表示不同的节点之间通过数据的传输实现了会话。
·传输层:实现数据的传输。
·网络层:实现网络地址的分配。典型设备:路由器。
·数据链路层:构建节点和节点之间的通信规则。交换机属于典型的二层设备。
·物理层:设备有网卡(网络适配器)、网线、集线器、中继器。
TCP/IP模型(TCP/IP协议簇):是一个已经实现了的通信模型,或者说是一系列的通信协议的集合体。基于OSI模型,又和OSI模型有所不同。
·应用层:包含应用层、表示层、会话层。
TCP/IP模型认为,应用层应该是由应用自身去控制会话、表示和应用的。
常见的应用层协议有:http、https等。
·传输层:传输层(TCP、UDP)
·TCP协议:面向虚电路的协议。是一种面向连接的协议。
TCP三次握手:用于建立连接
TCP四次分手:用于断开连接。
理论:双向确认的过程。
特点:数据传输可靠、有序、可以缓冲、超时控制、重发等。
·UDP协议:面向用户包的协议。是一种不连接的协议。
特点:数据传输是不可靠、无序、快速的。
从传输性能来说,UDP的性能要优于TCP。
·网络层:网络层(IP、ARP)。
在IP协议中,规定了通信双方法的源地址和目标地址。
·网络接口层:包含数据链路层和物理层。
单位:物理层的网络单位叫带宽,单位是bit位。 bps
传输层的网络单位叫数据流量,单位是byte字节。 b/s
1byte=8bit。
·架构体系:
目前来说,主流的架构体系都是依托于三层架构理念来建立的。
·客户端:Client
·服务器:Server
·数据库服务器:DBServer
根据客户端的不同,常见的架构体系有:
·C/S:Client/Server,由专有客户端来实现和服务器的通信。
通信协议很多时候都是专有的应用层协议(自定义的。)
·B/S:Browser/Server,又叫web application。
通信协议一般都是标准的http或者https协议。
·APP:特指移动设备上的软件。
从本质上来说,不论C/S还是B/S还是APP,从性能测试的角度来说,都是去模拟客户端向服务器发送的请求(应用层)。
·客户端技术:
以B/S架构为例。
在B/S应用中,客户端软件一般就是浏览器。
客户端的作用:
·解析客户端程序(页面)、提供交互给用户。
·接受和处理用户输入的数据。
·组装和发送数据给服务器。
·接收服务器的响应,并且解析展示给用户。
浏览器的区别在于浏览器内核,浏览器的内核主要的有:
·IE内核:IE浏览器的内核
·webkit内核:主要用于safari和chrome浏览器。
PS:chrome浏览器目前的内核叫blink,是基于webkit所做的分支。
·gecko内核:火狐浏览器。
·presto:塞班浏览器。
PS:目前业界都在向webkit靠拢。
浏览器的内核主要影响的是兼容性
B/S应用中,客户端常用的技术有:HTML、Javascript、css等。
·服务器端的技术:
一般来说,为了更好的实现服务器相关的效果,服务器通常会被分为web服务器和应用服务器。
·web服务器:有时又叫前端服务器。
作用为:
·监听端口,并且提供服务给客户端。
·接收客户端的请求。
·转发、调用应用接口或者处理客户端的请求。
·将处理结果返回给客户端。
典型的web服务器有:
·apache
·tomcat
·lighttpd
·IIS
·nginx
·应用服务器:又叫中间件服务器。
作用:
·模块化业务处理逻辑,提供接口给前端服务器调用。
·处理复杂的一些业务逻辑。
·一般都需要中间件或者其他的脚本引擎来支撑。
·直接接触数据库服务器,但是不直接接触客户端。
常见的应用服务器有:
·tomcat
·jboss
·weblogic
·websphere
·IIS
一般来说,应用服务器都可以做web服务器用。
·数据库服务器:
数据库按照逻辑模型的不同,可以分为:
·网状数据库
·层次数据库:
·关系型数据库:RDBMS
典型代表:
oracle
mysql
sql server(MS sql)
db2
postgre sql
·NoSQL:not only SQL
SQL表示结构化查询语言,是关系型数据库的官方操作语言,一般作为RDBMS的代名词。所以NoSQl就是指不仅仅是关系型数据库,又叫非关系型数据库。
目前主流的是MongoDB。
原文地址:https://www.cnblogs.com/wendy-0901/p/11576700.html