文档章节

如何用 OneAPM 优化你的 Node.js 应用?

OneAPM蓝海讯通
 OneAPM蓝海讯通
发布于 2015/09/10 20:00
字数 846
阅读 36
收藏 5

本文主要讲解如何使用 OneAPM 提供的信息从内存、CPU 使用、响应速度等方面优化 Node.js 应用。适用于定位于刚刚使用 Node.js 开发后台的读者。本文系 OneAPM 用户投稿,本网站授权转发。

本文你可看到以下内容

  • 为什么要使用 OneAPM
  • OneAPM 优化实例

为什么要使用 OneAPM ?

  1. 初次开发 Node.js 应用的时候,由于缺乏对 Node.js 的全面认识以及知识的缺乏会将大量的时间用在开发功能上,所以开发的功能必将留下一些「坑」。为了填补这些「坑」,首先你得能找到这些他们。
  2. 对于长期运行的后台服务,一些比较明显的问题可以及时的去解决,但是类似内存泄漏,数据库查询慢等需要长期运行才能发现的问题需要不同时间的数据对比才能发现。
  3. 随着业务请求量的提升,你的应用可能会出现「瓶颈」,如何找到「瓶颈」所在则尤为重要。

有了以上需求,我们来看看 OneAPM 能给我们提供什么 ?

  • 响应时间(Response time)

如何用 OneAPM 优化你的 Node.js 应用

  • 性能指数(Apdex score) Apdex 是一个国际通用标准,是对用户体验满意度的量化值。

如何用 OneAPM 优化你的 Node.js 应用

  • 吞吐量(Throughput)

如何用 OneAPM 优化你的 Node.js 应用

  • Web事务(Web transactions)

如何用 OneAPM 优化你的 Node.js 应用

  • 数据库(Database) 如何用 OneAPM 优化你的 Node.js 应用
  • 外部服务(External Service) 如何用 OneAPM 优化你的 Node.js 应用

OneAPM 优化实例

本文截图来自于在 OneAPM 官网上的 demo 实例。在看到响应时间排序图中我们可以看到,排在第一的是登录页面,用户使用的第一个页面就是登录,这个页面就如此慢会让用户的第一印象就不好,我们来看看它到底慢在什么地方了。

如何用 OneAPM 优化你的 Node.js 应用

点击如图所示的列表项,我们能看到 OneAPM 给我们列出了最近的慢事物列表:

如何用 OneAPM 优化你的 Node.js 应用 我们点击一个最近的慢事务进去能够看到 OneAPM 已给出了非常清晰的信息显示本次慢事物的耗时主要是在外部请求中。

如何用 OneAPM 优化你的 Node.js 应用 由于本实例应用登录页面会调用第三方登录接口来实现登录,为了进一步确定是这个第三方登录接口比较缓慢,我们还要排除是由于自身请求量大导致的网络请求缓慢,此时可以使用 OneAPM 提供的 Si 监控来查看应用所在的服务器的情况。

如何用 OneAPM 优化你的 Node.js 应用

我们的服务器的带宽是100M 的光钎,从 Si 给出的带宽信息可以确认网络问题是出在第三方登录中。

总结

对于初学者,尽管可以在开发初期借助本地的 spy-js 查看各种完整的 call stack 及其耗时,但是线上运行的应用的内存泄漏问题,以及慢事务是需要应用长期运行后才能发现的,所以 OneAPM 的出现让优化线上应用变得如此简单,能极大的方便我们持续优化线上的应用。

OneAPM 是应用性能管理领域的新兴领军企业,能帮助企业用户和开发者轻松实现:缓慢的程序代码和 SQL 语句的实时抓取。想阅读更多技术文章,请访问 OneAPM 官方博客

© 著作权归作者所有

OneAPM蓝海讯通
粉丝 94
博文 631
码字总数 1266889
作品 0
海淀
私信 提问
Node.js 应用性能优化的五个技巧

在这个由软件定义的世界里,企业往往是通过 Web 应用和移动应用程序来提供他们大部分的服务。所以对企业来说,一个非常重要的任务就是要确保用户拥有出色的使用体验。Node.js 正迅速成为时下...

OneAPM蓝海讯通
2015/07/09
43
0
Node.js 4.0.0:灵雀云和 OneAPM 的整合测试

## 关于 > Node.js 4.0.0 稳定版刚刚推出,备受期待,迫不及待地想用它写点东西;此外,要把 Demo 放到 Internet 上得有一个公网 IP ,看到[灵雀云](http://www.alauda.cn/)挺不错的而且提供...

OneAPM蓝海讯通
2015/09/15
2
0
国内最大的 Node.js 社区将 New Relic 的监控产品换成了 OneAPM

国内最知名的 CNode 社区把 New Relic 的监控产品换成了 OneAPM 。难道 APM 的老大 New Relic 已经被 OneAPM 超越? 毋庸置疑,在全球应用性能管理 SaaS 领域,New Relic 是当之无愧的老大。...

OneAPM蓝海讯通
2015/09/16
257
0
如何使用 OneAPM 监控微软 Azure Cloud Service ?

不知不觉微软 Azure 已经进入中国市场近两年的时间。那么 Azure 平台的性能究竟如何?资源加载的延迟、虚拟机的稳定性等问题是否切实满足客户期许。这些都是大家对微软 Azure 这个国外的云服...

OneAPM蓝海讯通
2015/08/20
45
0
13 款惊艳的 Node.js 框架——第2部分

【编者按】本文作者为 Peter Wayner,主要介绍13款至精至简的 [Node.js][1] 框架,帮助你简化高速网站、丰富 API 以及实时应用的开发流程。本文系国内 [ITOM][2] 管理平台 [OneAPM][3] 编译呈...

OneAPM蓝海讯通
2016/05/24
143
1

没有更多内容

加载失败,请刷新页面

加载更多

Taro 兼容 h5 踩坑指南

最近一周在做 Taro 适配 h5 端,过程中改改补补,好不酸爽。 本文记录📝遇到的问题,希望为有相同需求的哥们👬节约点时间。 Taro 版本:1.3.9。 解决跨域问题 h5 发请求会报跨域问题,需...

dkvirus
48分钟前
3
0
Spring boot 静态资源访问

0. 两个配置 spring.mvc.static-path-patternspring.resources.static-locations 1. application中需要先行的两个配置项 1.1 spring.mvc.static-path-pattern 这个配置项是告诉springboo......

moon888
今天
2
0
hash slot(虚拟桶)

在分布式集群中,如何保证相同请求落到相同的机器上,并且后面的集群机器可以尽可能的均分请求,并且当扩容或down机的情况下能对原有集群影响最小。 round robin算法:是把数据mod后直接映射...

李朝强
今天
4
0
Kafka 原理和实战

本文首发于 vivo互联网技术 微信公众号 https://mp.weixin.qq.com/s/bV8AhqAjQp4a_iXRfobkCQ 作者简介:郑志彬,毕业于华南理工大学计算机科学与技术(双语班)。先后从事过电子商务、开放平...

vivo互联网技术
今天
19
0
java数据类型

基本类型: 整型:Byte,short,int,long 浮点型:float,double 字符型:char 布尔型:boolean 引用类型: 类类型: 接口类型: 数组类型: Byte 1字节 八位 -128 -------- 127 short 2字节...

audience_1
今天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部