测试开发面经

目录

1.性能指标有哪些?

[2.get 和 post 的区别](#2.get 和 post 的区别)

[3.HTTP 状态码有哪些?](#3.HTTP 状态码有哪些?)

[4.在 Linux 下查看端口号为80的所有进程命令是什么?](#4.在 Linux 下查看端口号为80的所有进程命令是什么?)


1.性能指标有哪些?

1)并发数

2)吞吐量

3)响应时间

4)事务

5)TPS 和 QPS

6)资源利用率

2.get 和 post 的区别

1)数据传递的位置不同:

get 参数直接拼接到 URL 地址后,能够在浏览器地址栏中直接看到

post 参数放在请求体中,在浏览器地址栏中不可见

2)安全性不同:

get 安全性差,因为参数能够显示在 URL 中,会被浏览器历史记录,服务器日志缓存下来,容易泄密,比如登录时候的密码

post 相对安全,因为数据是放在 body 中,不会被直接缓存或记录在历史记录中,但是也不是绝对安全的,可以通过抓包工具获取到数据

3)传输数据量大小不同

get 有长度限制,因为 URL 有长度限制,(每个浏览器限制不同,通常是几kb),不适合传大文件或大数据

post 没有长度限制,适合传大文件或大数据

4)浏览器的缓存机制不同

get 请求可以被浏览器主动缓存,下次访问相同资源可以直接读取缓存,速度更快

post 默认不会被缓存,每次都要向服务器发起请求

5)TCP数据包发送(底层区别)

get 浏览器会把 header 和 data 一起发出去,服务器响应200(返回数据)

post 浏览器先发 header ,服务器响应100 Continue,浏览器再发送 data ,服务器响应200

6)用途和语义不同

get 主要用于获取/读取数据。它是幂等的,就是多次请求同样的 URL ,结果都是一样,不应该改变服务器状态

post 主要用于提交/修改数据。它不幂等,每次提交都会在服务器中产生新的数据。

3.HTTP 状态码有哪些?

1)1xx:信息性

含义:请求已接收,正在处理中。这个状态码比较少见

代表:100(继续),告诉客户端可以继续发送请求体

2)2xx:成功

含义:请求被正常接收、理解并处理

代表:

200 OK:最常见,请求成功

201 Created:请求成功并创建新的资源。

202 No Content:服务器成功处理了请求,但是没有返回内容

3)3xx:重定向

含义:需要客户端进一步操作才能完成请求

代表:

301 Moved Permanently:永久重定向。旧网址被废弃了,以后去新网站

302 Found:临时重定向。暂时跳到另一个地址

304 Not Modified:缓存相关。资源未修改,告诉客户端直接用本地缓存,不用从服务器。

4)4xx:客户端错误

含义:客户端发送过来的请求有问题,服务器没法处理

代表:

400 Bad Request:请求参数错误或格式不对

401 Unauthorized:未授权。用户未登录或token无效,没有访问权限

403 Forbidden:禁止访问。用户登陆了,但是权限不够,例如普通用户使用管理权限

404 Not Found:资源找不到

405 Method Not Allowed:请求方法不支持,比如接口只支持post,而你却用了get

408 Request Timeout:请求超时

5)5xx:服务器端错误

含义:服务器处理请求时出错了(BUG)

代表:

500 Internal Server Error:服务器内部代码报错

502 Bad Gateway:网关错误(通常是Nginx和后端服务连接不上)

503 Service Unavailable:服务不可用(服务器崩了或在维护)

504 Gatewat Timeout:网关超时(服务器请求太慢,网关等不及了)

4.在 Linux 下查看端口号为80的所有进程命令是什么?

ps 是查看进程命令,grep 是用来配合筛选

netstat、ss 是查看端口号命令

查进程命令:ps -ef | grep 你的进程名

查端口号命令:netstat -tunlp | grep 你的端口号

相关推荐
咩咩啃树皮6 小时前
第40篇:Vue3组件化开发精讲——组件拆分、复用、父子通信、工程化架构
java·前端·架构
灯澜忆梦6 小时前
GO_并发编程---定时器
开发语言·后端·golang
鱟鲥鳚7 小时前
Spring Boot 集成 LangChain4j:从模型调用到 Tool Calling(Demo版)
java·spring boot
-银雾鸢尾-7 小时前
C#中的StringBuilder相关方法
开发语言·c#
-银雾鸢尾-7 小时前
C#中结构体与类的区别;抽象类与接口的区别
开发语言·c#
大模型码小白8 小时前
【Python零基础教程】继承、多态与魔法函数:面向对象编程三大核心特性详解
java·大数据·开发语言·人工智能·python·ai编程
腾渊信息科技公司9 小时前
Spring Boot对接MES实战:视觉检测数据自动同步方案
java·人工智能·spring boot·后端·计算机视觉·ai·软件需求
爱笑的源码基地10 小时前
高并发 Redis 缓存门诊HIS系统源码,含财务统计药房进销存
java·程序·门诊系统·诊所系统·云诊所源码
wuqingshun31415910 小时前
TCP超时重传机制是为了解决什么问题?
java
段一凡-华北理工大学10 小时前
向量数据库实战:选型、调优与落地~系列文章12:文本分块策略实战:chunk_size 怎么选?重叠多少?
开发语言·数据库·后端·oracle·rust·工业智能体·高炉智能化