API深度影响着你的应用

今天的数字应用世界其实是一个以API为中心的世界,我们只是没有意识到这些API的重要性。比如在电子商务交易、社交媒体等对交互高度依赖的领域,可以说API决定了应用的质量一点也不为过。

以京东为例,用户的每一次操作背后都关联着一系列API,比如购买商品时选择不同的规格、颜色等信息,这些API可能基于分布式服务位于不同地方,因此增加了更多的复杂性。也因为这些复杂的网络和应用架构,让这些API中的任何一个都可能不可用或出现某种性能问题。

(京东商城整体架构示例,图片来自互联网分享)

因此如果你想确保您的客户拥有良好的用户体验,主动监控您的API至关重要,有没有一种方式能在不影响现有用户的同时监测到哪些API存在问题呢?进而实现主动发现主动告警。没错,我们可以用模拟用户访问。

基调听云让这变成可能

既然是模拟总要有用户节点才行,基调听云经过10多年的积累和发展,目前遍布在全球各地的有30万+的模拟用户节点。这些节点通过任务下发方式主动对您的API接口做监控,无需您的开发人员做任何嵌码。只要是该API URL能在互联网上被访问,就可以通过主动监控提前发现API接口的错误或性能问题。提前发现和解决可以减少对用户的影响,帮您提升业务可用性和用户体验。

监控过程也很简单,5分钟搞定:
1、申请听云Network SaaS账号:https://account.tingyun.com/reg/register#/
2、创建API接口监控任务:在任务管理界面,创建“单一文件下载”类型的任务,输入要测试的API接口URL,请求方式为get和post方式,针对post请求,可以设置post内容以及预期的内容,以便监测过程中如果返回内容和实际内容不一致时可以报错报警。

3、配置完任务,建议及时对各种指标配置告警阈值,以便及时发现问题。

是不是很简单?先别急着放松,这只是开始。我们还要分析数据,按照惯例监控从来都不是我们的目的,数据才是。

我们该关注哪些指标?

对于API监控来说,建议重点关注的指标:可用性、错误、建立连接时间、首包时间等。

登录到听云控制台以后,选择你刚刚创建好的任务,正常情况下任务创建后几分钟左右就会有采集上来的数据展示。

分三步来看:

一看趋势
通过报表功能导航栏的“趋势”功能,我们可以查看该API接口近期的性能波动情况:

以上图为例,可以看到在11月2日左右,该接口的总下载时间由原来的2秒左右下降到5秒左右,下降了一倍多,这不是个好现象。

根据经验,影响总下载时间的指标一般可能是DNS时间、建立连接时间、SSL握手时间、首包时间、内容下载时间、总下载字节数等指标。

依次查看,我们看到首包时间和总下载时间的趋势一致,基本可以判断是由于首包时间变长,导致总下载时间变长的原因。

如下:

影响首包时间的元素一般为:
1、网络原因。结合看DNS、建立连接时间、SSL等指标都比较稳定,基本排除网络原因。
2、服务器对接口的处理能力下降。有可能业务量爆发导致API接口处理的内容变多,或者服务器负载比较高等原因。

这时候就可以联系相关技术同事在服务器端进行进一步查看分析了。

二看可用性

选取可用性指标页,可以查看API接口的可用性情况。

可以看到该接口近期的可用性为99.79%,在行业参考值范围以内,同时我们也看到近期该接口出现20次错误,我们可以在“错误”模块中查看近期都出现了什么类型的错误。

示例中该接口主要出现一些502、504、408、超时等类型的错误,可以点击每一种错误类型下钻分析其错误详情。

这里散点图,描述的是每一次错误请求的分布情况,可以继续点击某个错误图示,进一步下钻分析其错误详情。

三看主机

更详细的情况,可以从主机维度分析,可以查看此类错误主要都发生在哪些主机?

技术人员拿到这些信息可以在对应的服务器上做进一步排查和关注。

总结

通过这款产品的功能让我们多了一种方式快速地对自己的API质量能进行有效监控,工具归根到底都只是辅助,重要的是有主动监控的意识加上丰富的数据分析经验,定位和解决问题才会更加的如虎添翼。

  • 竞品分析是对你的竞争对手的产品进行评估的过程,好的竞品分析能帮助你找到竞品的优势、劣势和目前在市场上的地位。但是,很多时候我们做竞品分析的思路都是不正确的,本文将从多方面进行阐述如何写出有价值的竞品分析报告。

    继续阅读
  • 对于数字化转型最关键的是要搞清楚数字化只是手段,转型才是目的,而这背后更重要的是:转型是为了满足新的需求,而不是为了应用新技术,这才是根本。

    继续阅读
  • 可观测性应用使企业机构能够利用他们的数据特征来获得竞争优势。它能够在正确的时间提高正确数据的战略重要性,以便根据明确的数据分析结果采取快速行动,因此可观测性是一种强大的工具。如果能够在战略中予以规划并成功执行,可观测性应用将成为数据驱动型决策的最强支撑。

    继续阅读
  • 一个解决方案体现的不仅仅是产品的能力,更多的是公司或者说是公司的人的深度思考能力。我们通过换位的深度思考,明确问题的本质来解决才是上策,而不是拘泥于形式上的所谓的“解决方案”。

    继续阅读
  • 对于数字化转型最关键的是要搞清楚数字化只是手段,转型才是目的,而这背后更重要的是:转型是为了满足新的需求,而不是为了应用新技术,这才是根本。

    继续阅读