327京东一面

1.项目相关

2.手撕SQL 两道

3.JMeter性能测试

首先,进行基准测试:

单用户测试(单用户循环多次得到的数据);为多用户并发执行提供参考

其次,进行负载测试:

通过逐步增加系统负载,确定在满足系统的性能指标情况下,找出系统所能承受的最大负载量,检查是否满足需求说明中国的要求。

然后,进行压力测试:

例如天猫或淘宝双十一活动,测试在负载过大的情况下系统是否会崩溃。

也可以用来进行并发测试:

例如秒杀活动,在极短的时间内,发送多个请求,来验证服务器对并发的处理能力

最后,对系统进行稳定性测试:

用户正常的业务负载的情况下进行长时间测试(一天或者一周),并最终保证服务器能满足线上业务需求。【例如在实习过程中,公司的另一个项目:维护洞察系统(主要是用来记录飞机发动机零部件的使用情况以及维修情况),在项目上线前一段时间,项目组成员就利用JMeter来做性能测试,来测试系统是否能够在需求说明下的业务场景中稳定运行,最后上线项目】

以上就是自己目前及到的所有性能测试。

4.接口测试 结合自己项目说

4.1页面返回404 500 3XX 都是啥原因

响应状态码:通过请求然后返回的响应信息【响应信息包括响应行(包含状态码)、响应头、响应正文】

4.1.1返回404原因:

4XX:客户端错误【如客户端请求不存在的页面,客户端未提供有效的身份验证信息】 

404:无法找到指定位置的资源

1.请求的URL拼写错误: 如果请求的URL中存在拼写错误或路径错误,服务器将无法找到对应的资源,导致返回404错误。也有可能是原始的URL失效,可能后台更改了URL路径

2.文件路径或名称错误: 如果请求的文件路径或文件名称不正确,服务器也会返回404错误。这可能是由于文件被移动、删除或重命名等原因导致的。

3.未正确配置服务器: 如果服务器未正确配置或未包含所请求的资源,也会导致返回404错误。这可能是由于服务器配置错误、权限设置问题或者是资源未正确上传至服务器等原因引起的。

4.权限问题: 如果请求的资源需要特定的权限访问,而当前用户没有权限,服务器也会返回404错误。

5.目录列表禁止: 如果服务器禁止了目录列表功能,并且请求的URL对应的目录中没有默认的索引文件(如index.html),服务器也会返回404错误。【不了解】

6.网站迁移或删除: 如果网站进行了迁移或删除了部分页面,而之前的链接仍然存在,访问这些已经不存在的页面时会返回404错误。

7.服务器故障: 在某些情况下,服务器可能由于各种原因(如网络故障、服务器故障等)无法响应请求,导致返回404错误。

在面对404错误时,可以先检查URL拼写、文件路径、服务器配置等方面是否存在问题,然后逐步排除可能的原因,以便找到并解决问题。

4.2.2 返回500原因

5XX:服务器错误

  1. 服务器内部错误(500 Internal Server Error): 这是最常见的5XX错误之一,表示服务器在处理请求时发生了未知的内部错误。可能是由于服务器配置问题、程序代码错误、数据库连接问题等引起的。

  2. 网关超时(502 Bad Gateway): 这个错误通常出现在服务器作为网关或代理时,向上游服务器(如应用服务器、数据库服务器等)发出请求时,上游服务器未能及时响应,导致请求超时。这可能是由于上游服务器负载过高、网络故障或者是服务器配置不当等原因引起的。

  3. 服务不可用(503 Service Unavailable): 这个错误表示服务器当前无法处理请求,通常是由于服务器过载、维护或升级等原因导致的。这可能是由于服务器资源不足、流量过大、应用程序崩溃等原因引起的。

  4. 网关错误(504 Gateway Timeout): 这个错误通常出现在服务器作为网关或代理时,向下游服务器(如数据库服务器、应用服务器等)发出请求时,下游服务器未能及时响应,导致请求超时。与502错误类似,可能是由于下游服务器负载过高、网络故障或者是服务器配置不当等原因引起的。

  5. HTTP版本不受支持(505 HTTP Version Not Supported): 这个错误表示客户端使用的HTTP版本不被服务器支持。这可能是由于客户端使用了过时的HTTP版本或者服务器配置不正确等原因引起的。

5.如何判断Bug是前端还是后端

1.错误消息和日志分析: 查看错误消息和日志文件,以确定错误发生的位置。前端错误通常会在浏览器的开发者工具中显示,而后端错误通常会记录在服务器端的日志文件中。

2.网络请求和响应: 

【使用抓包工具,或者浏览器自带的开发工具例如F12,主要从接口、传参、响应三个方面进行分析。检查URL以及参数是否正确,若不正确,是前端Bug;若URL和传参都正确,响应错误,那么就是后端错误】

使用浏览器的开发者工具或网络监控工具来查看网络请求和响应。如果发现错误在网络请求过程中发生,可能是后端引起的。但是,如果网络请求成功并返回正确的响应,但前端页面显示异常,那么可能是前端引起的。

3.查看数据库:

很多bug出现在接口的相互调用的情形里。可以通过在数据库里查询数据、比对来判断是哪些接口出了问题,比如:在A模块添加一条数据,但是在B模块没有展示,这时我们 通过查询数据库的数据来确认,是A模块没有插入数据,还是B模块没有查询到。而知道接口是前端还是后端负责开发的,就知道bug该给谁改了。

4.调试和断点: 在代码中设置断点并逐步调试以找出问题所在。如果在前端代码中遇到问题,如 JavaScript 错误或界面显示异常,那么问题可能是前端引起的。如果在后端代码中遇到问题,例如在数据库查询或处理逻辑中出现错误,那么问题可能是后端引起的。

5.测试环境隔离: 尝试在不同的环境中重现 Bug。如果在本地环境中重现 Bug,首先检查前端代码。如果在测试服务器或生产环境中发现 Bug,可能是由后端引起的。

6.跨团队协作: 在多人开发团队中,前端和后端开发人员应该密切合作,共同解决问题。通过交流和协作,可以更快地确定 Bug 的根本原因并解决问题。

6.若已经确定是后端Bug,应该去从哪些方面查找原因

1. 审查错误日志【必答项】

  • 查看后端系统的错误日志,这通常是定位问题的第一步。搜索与Bug相关的时间段的日志,注意异常堆栈、错误消息和警告。

2. 复现问题

  • 尝试在开发或测试环境中复现Bug,确保你能观察到问题的具体表现。复现问题有助于理解Bug的上下文和触发条件。

3. 代码审查

  • 根据错误日志和复现的行为,审查可能导致问题的代码段。注意审查相关的函数、类或模块,特别是最近有改动的部分。

4. 检查外部依赖

  • 验证所有外部依赖项(如数据库、API服务、中间件等)是否正常工作。有时Bug可能由外部系统的变更或故障触发。

5. 分析数据

  • 检查数据库或其他数据存储中相关数据的完整性和准确性。不一致或脏数据经常是导致后端问题的原因。

6. 网络和基础设施

  • 确认后端服务的网络连接无误,无防火墙或网络策略阻止了必要的通信。基础设施的配置错误有时也会导致问题。

7. 资源使用和性能监控

  • 检查服务器和应用程序的资源使用情况,包括CPU、内存、磁盘I/O等。资源耗尽或泄露可能是Bug的原因。

8. 配置和环境

  • 核查应用和服务器的配置设置。确保没有错误或不一致的配置导致了问题。

9. 安全漏洞检查

  • 考虑是否有安全漏洞被利用,导致了异常行为。比如,SQL注入、未授权访问等。

10. 变更历史

- 查看代码变更历史和部署日志,了解自问题发生以来有哪些变更。这有助于识别问题的引入时间点。

11. 询问和协作

- 向团队成员询问是否有人遇到过类似问题或是否有人最近在相关模块中进行了更改。

12. 测试覆盖分析

- 检查相关功能的测试覆盖情况。了解哪些测试场景被覆盖,哪些没有,可能会提供问题定位的线索。

通过这些步骤的综合分析,通常可以逐步缩小问题范围,并最终定位到Bug的具体原因。每个步骤中发现的信息都可能是解决问题的关键线索。在整个过程中,保持细致的记录和良好的沟通非常重要。

7.若用户登录失败,有哪些原因

反问环节

提醒了一下京东会议若浏览器进入,存在登录不进去的问题

APP 登录可以正常登录

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/500685.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

爬虫逆向实战(38)-某空气质量平台(反调试,AES,DES,MD5)

一、数据接口分析 主页地址:某空气质量平台 1、抓包 (1) 反调试 该网站对鼠标右击以及F12进行了监听并拦截 虽然该网站无法打开Chrome控制台,导致我们无法抓包,但是道高一尺魔高一丈。既然我们无法在打开该网站的时候打开Chrome控制台&…

括号生成(回溯+剪枝)

22. 括号生成 - 力扣(LeetCode) 题目描述 数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。 样例输入 示例 1: 输入:n 3 输出:["((()))&q…

速通汇编(二)汇编mov、addsub指令

一,mov指令 mov指令的全称是move,从字面上去理解,作用是移动(比较确切的说是复制)数据,mov指令可以有以下几种形式 无论哪种形式,都是把右边的值移动到左边 mov 寄存器,数据&#…

竞赛 python+大数据校园卡数据分析

0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 基于yolov5的深度学习车牌识别系统实现 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:4分工作量:4分创新点:3分 该项目较为新颖&am…

2024年 前端JavaScript 进阶 第1天 笔记

1.1-作用域和作用域链 1.2-JS垃圾回收机制以及算法 1.3-JS闭包 JS进阶-day1-154-JS闭包_哔哩哔哩_bilibili 1.4-变量和函数提升 1.5-函数剩余参数和展开运算符 运用场景: 1.6-ES6箭头函数的使用 1.7-数组解构 1.8-对象解构 最简写法: 1.9-forEach遍历数…

centos7配置阿里云的镜像站点作为软件包下载源

目录 1、备份 2、下载新的 CentOS-Base.repo 到 /etc/yum.repos.d/ 3、测试 阿里镜像提供的配置方法:centos镜像_centos下载地址_centos安装教程-阿里巴巴开源镜像站 1、备份 [rootlocalhost ~]# mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentO…

Nginx-记

Nginx是一个高性能的web服务器和反向代理服务器,用于HTTP、HTTPS、SMTP、POP3和IMAP协议。因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。 (1)更快 这表现在两个方面:一方面,在正常情况下&…

Linux中安装JDK17.X

1、总体概述? 该操作方式适合centos或red hat环境 2.1、在线下载JDK安装包? 通过wget命令下载JDK17.X包 wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz 如果提示:没有wget命令就安装wget yum install w…

.Net 知识杂记

记录平日中琐碎的.net 知识点。不定期更新 目标框架名称(TFM) 我们创建C#应用程序时,在项目的工程文件(*.csproj)中都有targetFramework标签,以表示项目使用的目标框架 各种版本的TFM .NET Framework .NET Standard .NET5 及更高版本 UMP等 参考文档&a…

如何通过针对iOS的动态分析技术绕过反调试机制

在这篇文章中,我们将跟大家介绍和分析一种针对iOS的新型安全研究技术,该技术能够让iOS应用程序的调试过程更加轻松,并解决那些可能会延缓我们步伐的阻碍。 如果你要对一个采用了反调试技术的iOS应用程序或二进制文件进行调试的话,…

基于龙芯2k1000 mips架构ddr调试心得(二)

1、内存控制器概述 龙芯处理器内部集成的内存控制器的设计遵守 DDR2/3 SDRAM 的行业标准(JESD79-2 和 JESD79-3)。在龙芯处理器中,所实现的所有内存读/写操作都遵守 JESD79-2B 及 JESD79-3 的规定。龙芯处理器支持最大 4 个 CS(由…

【JVM】JVM类加载过程

文章目录 🌴类加载过程🌸加载🌸加载🌸验证🌸准备🌸解析🌸初始化 🌲双亲委派模型🌸什么是双亲委派模型?🌸双亲委派模型的优点 ⭕总结 &#x1f334…

【2】单链表

【2】单链表 1、单链表2、单链表的设计3、接口设计4、SingleLinkedList5、node(int index) 返回索引位置的节点6、clear()7、添加8、删除9、indexOf(E element) 1、单链表 📕动态数组有个明显的缺点 🖊 可能会造成内存空间的大量浪费 📕 能否…

云原生架构(微服务、容器云、DevOps、不可变基础设施、声明式API、Serverless、Service Mesh)

前言 读完本文,你将对云原生下的核心概念微服务、容器云、DevOps、Immutable Infrastructure、Declarative-API、Serverless、Service Mesh 等有一个相对详细的了解,帮助你快速掌握云原生的核心和要点。 因题主资源有限, 这里会选用部分云服务商的组件进…

算法沉淀——拓扑排序

前言: 首先我们需要知道什么是拓扑排序? 在正式讲解拓扑排序这个算法之前,我们需要了解一些前置知识(和离散数学相关) 1、有向无环图: 指的是一个无回路的有向图。 入度:有向图中某点作为图…

数字图像处理——直方图的均衡化

1.方法简介: 直方图均衡化通常用来增加许多图像的全局对比度,尤其是当图像的有用数据的对比度相当接近的时候。通过这种方法,亮度可以更好地在直方图上分布。这样就可以用于增强局部的对比度而不影响整体的对比度,直方图均衡化通…

01---java面试八股文——mybatis-------10题

1、什么是MyBatis Mybatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。程序员直接编写原生态sql&#xff0c…

基于51单片机和MAX1898的智能手机充电器设计

**单片机设计介绍,基于51单片机和MAX1898的智能手机充电器设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于51单片机和MAX1898的智能手机充电器设计概要 一、引言 随着智能手机的普及,其电池续航…

图像分类实战:深度学习在CIFAR-10数据集上的应用

1.前言 图像分类是计算机视觉领域的一个核心任务,算法能够自动识别图像中的物体或场景,并将其归类到预定义的类别中。近年来,深度学习技术的发展极大地推动了图像分类领域的进步。CIFAR-10数据集作为计算机视觉领域的一个经典小型数据集&…

NumPy介绍及其应用领域

1.NumPy介绍 ​NumPy(Numerical Python)是 Python 的一个开源的扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。NumPy的前身为Numeric,起初由Jim Hugunin与其他协作者共同开发&…