当前位置:首页 > 教育培训 >

后端服务问题怎么找(app后端换服务器)

来源:原点资讯(www.yd166.com)时间:2023-05-10 12:41:02作者:YD166手机阅读>>

后端服务问题怎么找,app后端换服务器(1)

结合自己的工作经验,谈谈问题为什么会产生,已经定位后端问题的一些经验总结。这个只是本人的一点想法而已,大家有啥想补充的都可以留言说明。

01

Bug是如何产生的?

计算机是精确的,而人是非理性的。这是Bug之所以会产生,且一直烧之不尽的本质原因。如果将编程比喻成施咒,一个字符、一个停顿,没有与正确的形式一致,咒语就不会生效。

另外还有一个次要原因:开发目标、所需资源往往都是 由 他人提供的, 程序员很少能够自己控制工作环境和工作目标。

综上,程序员能做的只是不断逼近完美,但是并没有办法将Bug从软件中彻底清除。

02

后端开发的现状

后端服务问题怎么找,app后端换服务器(2)

目前,搭建若干套环境是目前技术公司都会采用的方案。这里抽象为开发环境、测试环境、线上环境,三者之间共用一套程序,但是数据是隔离的。

开发环境由开发人员维护,主要用于验证方案,调试程序,变更频繁但是数据单一。由于开发能够直接介入,这个阶段出现的问题往往都能够被很快的解决。开发自测通过后,程序会被发布到测试环境。

测试环境相较于开发环境更加稳定,数据也更接近线上环境。开发收到的问题反馈大量的集中在这一阶段,而且由于不能直接介入,定位与解决问题的难度开始提升。测试人员测试通过后,程序正式向用户发布。

线上环境是直接面向用户的,流量大且请求多样。请求多样意味着正式环境能够暴露前两个阶段未能发现的问题,流量大意味着出现问题往往就会造成重大影响。与测试环境一样不允许开发直接介入,但对于定位问题的速度要求更高。

03

一个请求在哪会出问题?

后端服务问题怎么找,app后端换服务器(3)

一个典型的单点服务模型

单 点服务模型 的优点是运行稳定。 但是运行稳定并不意味着不会出错,如果某次请求产生了意料之外的结果,很大的可能是发生在Service内部或者客户端与服务器交互,极少数情况下发生于Nginx、DB以及其他系统之间的交互。

单 点服务模型 的缺点也很明显,就是容易遇到性能瓶颈 。优化性能的措施有很多,比如DB的读写分离、引入缓存、水平扩展Service、多台服务器DNS轮询等等。但是每引入一项措施,都会损失一部分系统稳定性。优化后的系统相较于单点模型,组件内部及组件之间的出现问题的可能性均在增加。

04

如何快速定位问题?

后端服务问题怎么找,app后端换服务器(4)

还记得初中学到的如何做实验吗?

定位问题也遵循上面的流程。 知道了为什么 会出现问题,以及 在哪会经常出现问题 之后 ,遇到问题 ,就可以 根据 问题表现 做到有的放矢。

一、 客户端到服务器之间的问题

后端服务问题怎么找,app后端换服务器(5)

客户端到服务器之间问题因为牵扯到请求消息内容、网络环境等因素,往往需要引入工具来帮助定位。

如果你也在学习,在入门学习的过程当中有遇见学习,行业方面的问题,或者说缺乏系统的学习路线和系统学习视频,你可以加入我的 学习交流群:322708204 里面有我根据今年市场技术栈要求录制的Java精讲视频教程,群文件里面有我这几年整理的学习手册,面试题,开发工具,PDF文档书籍,进群即可免费获取,或者私信面试也可获取。

  • 如果怀疑网络不通, ping/telnet命令 能够很快速的判断客户端与服务器之间的网络是否正常。
  • 浏览器的 开发者工具(F12) 是快速定位网页问题的利器。
  • APP与服务器之间的交互往往都是API, Postman 除了支持主流的Restful,最近的版本也引入了对Graph的支持。
  • Pc所有的网络流量在 Wireshark 面前都无所遁形。
  • 手机请求不能像浏览器一样容易抓包,HTTP抓包利器 Fiddler 的代理模式值得一试。

二、

后端服务问题怎么找,app后端换服务器(6)

服务器内部问题不同客户端的地方在于不可见,无法像客户端一样通过引入工具可视化的定位问题。此时能够帮助快速定位问题的一是 Shell命令 ,二是 运行日志 。

总结

定位问题不要只盯着问题,要多思考问题是怎么来的,问题之间有没有共性,如何才能避免类似问题的发生。

栏目热文

怎么获取web服务的url(web服务怎么关闭)

怎么获取web服务的url(web服务怎么关闭)

大黑客呢?肯定会自己写脚本,不要一条一条的去敲命令,这里简单的利用lynx这个命令的应用来提取特点的web页面中的一系列...

2023-05-10 12:40:29查看全文 >>

服务器中url地址怎么获取(怎么将本地的url部署到服务器上)

服务器中url地址怎么获取(怎么将本地的url部署到服务器上)

我们在开发wordpress时,常常会用到获取各种路径的函数,有时我们可以把路径写成绝对路径,但是每个人安装主题的路径是...

2023-05-10 12:46:35查看全文 >>

怎么获取服务器url(服务器地址怎么填)

怎么获取服务器url(服务器地址怎么填)

上期讲了正则表达式(点击查看你想要的正则表达式都在这里),现在我们举一个例子,以"http://www.163.com"...

2023-05-10 13:12:42查看全文 >>

后端怎么隐藏返回给前端的url(前后端分离的项目前端怎么去启动)

后端怎么隐藏返回给前端的url(前后端分离的项目前端怎么去启动)

来源:https://www.oschina.net/news/116439/chromium-url-bar-hide...

2023-05-10 13:11:25查看全文 >>

后端测试无法识别url(后端开发遇到的问题)

后端测试无法识别url(后端开发遇到的问题)

URL解析URL:统一资源定位符。URI:统一资源标识符。URL可以看作是URI的具体实现。URL的构成:一个URL一般...

2023-05-10 12:48:25查看全文 >>

如何知道后端api的请求地址(api接口在哪里)

如何知道后端api的请求地址(api接口在哪里)

IP信息查询 API 接口在网上已经很多且大都封装成了 API 供别人调用。支持前台跨域请求,以GET方式提交即可。IP...

2023-05-10 13:09:45查看全文 >>

服务器处理url请求的方法(怎么将本地的url部署到服务器上)

服务器处理url请求的方法(怎么将本地的url部署到服务器上)

我们先来认识一下web服务器主要功能。处理哪些URL请求怎么处理这些URL请求下面我们主要针对这两个功能来进行讲解。一、...

2023-05-10 12:45:53查看全文 >>

后端服务失败怎么回事(后端服务性能测试怎么测)

后端服务失败怎么回事(后端服务性能测试怎么测)

今天我们来讨论微服务架构中的自我恢复能力。通常情况下,服务间会通过同步或异步的方式进行通信。我们假定把一个庞大的系统分解...

2023-05-10 12:49:49查看全文 >>

后端请求地址怎么设置(前端是如何给后端传数据的)

后端请求地址怎么设置(前端是如何给后端传数据的)

一、ajax介绍ajax 是前后端交互的重要手段或桥梁。它不是一个技术,是一组技术的组合。ajax :a:异步;j:js...

2023-05-10 12:45:15查看全文 >>

调用后端服务出现异常(后端服务性能测试怎么测)

调用后端服务出现异常(后端服务性能测试怎么测)

一般前端开发同学,对日志其实不太敏感,毕竟前端大多数情况下,不太关心日志。即使有,也可能调用一些第三方的统计,比如百度统...

2023-05-10 12:58:22查看全文 >>

文档排行