IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 最新2021软件测试经典面试题,你能答多少? -> 正文阅读

[网络协议]最新2021软件测试经典面试题,你能答多少?

网络

简单描述下TCP协议

TCP:传输控制协议,是传输层通信协议。它有面向连接、可靠、字节流传输等特点

TCP建立连接时,需要三次握手协议

TCP三次握手的过程如下:

客户端发送SYN保温给服务端,进入SYN_SEND(SEQ=X)状态

服务端收到SYN保温,回应一个SYN(SEQ=Y) ACK(ACK=X+1)报文,进入SYN_RECV状态

客户端收到服务端的SYN报文,回应一个ACK(ACK=Y+1)报文,开始建立连接

TCP/IP作用是什么?

TCP/IP协议是一套网络通信标准,让全世界的各种不同的设备之间可以进行通信

TCP与UDP的区别?

TCP传输控制协议 。UDP用户数据报协议

TCP对资源要求比较多,UDP对资源要求比较少

TCP可以保证数据的正确性,UDP有可能会丢包

TCP可以保证数据的顺序,UDP不会保证

网络7层模型是那7层?列举一些具体的应用实例

从下到上,物理层、数据链路层、网络层、传输层、会话层、表示层、应用层

物理层:同轴电缆、接收器、发送器等

数据链路层:网卡、交换机、网桥

网络层:路由器、网关

传输层:TCP协议、UDP协议

会话层:SQL、ASP、 PHP等

表示层:ASCII、JPEG、PNG、MP3等

应用层:telnet、ssh、http、smtp等

怎么测试网络是否连通?

使用ping命令

什么方式可以是外网连接到家里主机?

telnet

如何让外网访问家里的终端?它的原理是什么?

电脑上开启远程桌面

使用teamview

他们的原理是:

你和对方机器建立一个Socket连接

在本地虚拟一个对方的系统

对方系统会在这个Socket连接上实时发送它系统状态的数据

收到的数据,是本虚拟系统通过这个数据还原对方系统操作

本地操作这个虚拟操作系统,会发送数据命令到对方机器

对方继器接收指令,通过Hook(底层钩子)传给操作系统

然后循环

访问一个网址会经历哪些流程?

以下几个简单的流程

首先需要通过域名找到IP,如果本地缓存没有需要请求DNS服务器

得到IP后开始与目的主机进行三次握手来建立TCP连接

连接建立后进行HTTP访问,传输病获取网页内容

传输完成后与目的主机四次握手断开TCP连接

2Linux

Linux常用命令有哪些,并简述他们的作用

ls 查看当前目录

df-h 查看磁盘使用情况

kill 杀掉进程

top 查看当前主机状态

mv 移动文件

cp 复制文件

netstat-a 查看端口使用状态

rm 删除

cat 查看文件

vim怎么退出

q 不保存直接退出

wq 保存后退出

q! 强制退出

怎样一页一页地查看一个大文件的内容呢?

cat filename.txt | more 通过管道命令和more实现

如何查看linux端口号被占用?

netstat -a 查看端口状态

如何查看进程状态?

ps -ef | grep 进程名

chown是什么?grep是什么?

chown 改变文件的拥有者和组

gerp 查找文件里符合条件的字符串

如何查看日志?

tail -f 日志文件名

5个客户端通过TCP连接到主机,如何查看这5个连接?

netstat -nat|grep ESTABLISHED

3数据库

哪些方法可以提高数据库查询效率?

建立索引,利用索引

只查询必要的字段

合理的处理NULL字段

慎用like等通配符

在这里我向大家推荐一个自动化学习交流群。交流学习群号:779450660 里面会分享一些资深架构师录制的视频录像

索引设计的时候要注意什么?

索引字段长度不能太长

索引的个数不能太多

数据库更新语句?GROUP BY 如何使用?

UPDATE TABLENAME SET 字段名称 = 新值 WHERE 列名称 = 旧值

GROUP BY 一般常用于对查询结果进行分组

#如果想要对结果进行分组统计,加上SUM函数即可

SELECT SUM(列名1) 列命2 FROM TABLENAME

WHERE 列名1 列名2

GROUP BY 列命1

如果一个数据表有成千上万条记录,访问时很慢,有哪些方法可以优化?

MySQL

mysql的索引,最左匹配原则

索引可以加快对数据的检索。常见的有B+Tree索引,哈希索引。

最左匹配原则:

当索引是联合索引,在查询条件中,mysql是从最左边开始命中的,如果出现了范围查询(>、<、between、like),就不能进一步命中了,后续退化为线性查找,列的排列顺序决定了可命中索引的列数。

mysql的主从复制

mysql为了保持高可用,会采用一主多从的结构,一个master节点,多个slave节点,master节点可以进行写操作,而slave节点只能进行读操作。

binlog线程:将主服务器上的数据更改写入二进制日志中

I/O线程:从主服务器上读取二进制日志,并写入从服务器的重放日志中

SQL线程:读取重放日志并重放其中的SQL语句

mysql的聚集索引、非聚集索引

聚集索引:以主键创建的索引,在叶子结点上存储的是表中的数据

非聚集索引:以非主键创建的索引,叶子结点上存储的是主键和索引列

使用非聚集索引查询出数据时,拿到叶子上的主键再去查到想要查找的数据。(回表)

mysql联合索引,要注意什么?

联合索引即索引由多个列(a,b,c,d)组成,要注意索引的命中,最左匹配原则,从左开始命中,遇到范围查询就不能进一步匹配。

为什么数据库要使用B+树来实现索引?

更少的查找次数(B+树相比红黑树更矮胖)

利用磁盘预读特性(一次IO能完全载入一个节点)

4编程

HTTP协议中GET和POST的区别

1、get请求重点在从服务器上获取资源,而post请求重点在向服务器发送数据。

2、get传输数据是通过URL请求,以字段=value的形式,用?连接置于URL之后,多个请求数据之间用&连接,这个过程用户可见,不安全,参数暴露。post传输数据是将字段与对应值封存在请求实体中发送给服务器,这个过程用户不可见,隐藏式的请求,相比是安全的。

3,get传输的数据量小,受URL长度的限制,但是效率高。post传输数据量不受限制,可以传输大量数据,所以传输文件时只能使用post,但是效率较低。请求较多时可能形成一个请求队列。

4,get方式只支持ASCII字符,因此向服务器传输中文有可能出现乱码。post支持标准字符集,可以正确传递中文字符。

HTTPS怎么建立请求?

HTTPS = HTTP + SSL(Secure Sockets Layer, 安全套接字层)

HTTPS 可以防窃听(非对称密钥加密)、防伪装、防篡改(加密和认证)

客户端发送请求到服务器端

服务器端返回证书和公开密钥,公开密钥作为证书的一部分而存在

客户端验证证书和公开密钥的有效性,如果有效,则生成共享密钥并使用公开密钥加密发送到服务器端

服务器端使用私有密钥解密数据,并使用收到的共享密钥加密数据,发送到客户端

客户端使用共享密钥解密数据

SSL加密建立…

最后: 欢迎大家关注公众号:【 程序员小野 】,领取一份300页pdf文档的Python自动化测试工程师核心知识点总结!

学习软件测试是件需要坚持的事情,学习的过程可能会很枯燥,不过有一些人一起学的话大概就不会了吧,如果有需要自学资料的,可以加入软件测试学习交流群:779450660 ,有人陪伴,不会孤单!

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-10-16 19:59:41  更:2021-10-16 20:01:20 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年6日历 -2024/6/29 18:20:27-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码