查询分析器在哪里_你应该知道的3种Node.js分析器类型

Node.js类似于许多其他编码语言,因为它需要与正确的工具结合使用来调试程序,克服任何瓶颈并优化其功能。使用正确的分析器,您可以毫不费力地实现这一目标,尽管它们都不是完美的。

在编码中,分析器是一种动态程序分析软件,用于测量函数调用的功效,频率和持续时间。这些程序能够测量程序的空间,时间复杂度和特定指令的使用,以便优化程序。

以下是3种不同类型的Node.js分析器,以及您应该了解的内容:

  1. 标准分析器
  2. 跟踪分析器
  3. APM(应用程序性能管理)工具

标准Node.js分析器

标准的采样分析器有助于您全面了解程序中的工作内容和不适用的内容。此技术监视诸如CPU,内存使用情况,每行代码花费的时间以及方法调用频率等因素。

这些分析器包括定期记录应用程序的堆栈跟踪。通过抽样,您可以很好地了解应用程序中存在的任何瓶颈和功能问题,其中包含许多可帮助您简化调试过程的指标。

例子

优点

  • 使用Node.js,记录之间的时段以刻度来衡量,这是常规单位。
  • 跟踪分析器所涵盖的其他一些指标包括总计,即执行函数或执行活动所涵盖的刻度总数(时间)。它们还会查看百分比,它是函数或活动的执行时间与进行测量的整个时间的比率。
  • Self指的是函数或活动的纯执行时间,而不考虑执行函数所花费的时间。该百分比是测量在相对于整个时间的函数或活性的纯执行时间的比率。
  • 父对象是指函数的纯执行时间与调用它的父函数的执行时间的比率。
  • 采样分析器构建调用树并根据收集的分析数据在单独的窗格中显示它们,这允许您分析调用耗时(繁重)的应用程序执行,并通过显示整个调用层次结构以及充当的函数执行入口点在顶部。

缺点

  • 不支持在执行应用程序期间停止并重新启动性能分析,要求您等待它处理完毕。
  • 由于快照是随机拍摄的,因此采样分析器无法提供高精度或精确度。这意味着任何功能都可能恰好记录在快照中,而不必完全详细说明应用程序中的紧迫问题。
  • 抽样可以让您大致了解大部分时间花在哪里,但准确性不是它的强项。
  • 这种类型的分析还可能导致执行延迟,从而影响分析结果。
23658f21ab348326a52da132ee31f7ea.png

Node.js跟踪分析器

例子

跟踪分析器要求开发人员直接将跟踪信息直接记录到代码中。这些分析器以更精确的方式查找性能和应用程序问题。

跟踪分析器记录所有函数调用,它们旨在降低成本。这些允许您自己主动将跟踪信息记录到代码中。这种方法有几个优点,尽管更多信息通常会导致更多的错误空间。

优点

  • 这些可以测量包括呼叫时间,内存使用和对象分配在内的许多指标。
  • 它们相对容易设置。
  • 使用跟踪分析器,您可以准确测量每种方法花费的时间,为您提供更全面的调试体验。
  • 此外,此工具允许您计算跟踪方法的调用次数。

缺点

  • 它们包含固定数量的每个函数调用或执行的代码行,这可能导致您做出错误的决策。
  • 这些分析器对它们可以监视的内容有限制,并且由于它的全面性,它们可以大大减慢您的程序。
  • 与采样相比,拥有更多数据也意味着更大的结果失真。
  • 跟踪还意味着分析延迟取决于代码和进行跟踪测量的位置。如果同时在其他跟踪方法中调用跟踪方法,则将为外部方法积累所有内部延迟,这可能使得难以将执行时间与跟踪失真分开。

APM Node.js 分析器

应用程序性能管理(APM)工具用于识别和修复应用程序性能问题,直至代码行。

例子

这些类型的分析器旨在识别和解决Node.js应用程序性能问题,直到代码行。这些可以向您展示代码的每个元素以及从最终用户体验到服务器监视的成功。此外,他们还可以跟踪慢速数据库查询,第三方API,缓存层,后台作业等。

优点

  • 这些发现并修复了内存泄漏和CPU瓶颈。
  • 他们使用端到端(E2E)跟踪来调试分布式事务。
  • 他们可以跟踪分布式调用链。
  • 帮助避免安全漏洞和坏的npm包。
  • 获得特定的代码行可见性,以便利用错误堆栈跟踪查明最小的错误。
  • 获取有关应用程序错误和异常的警报,并在它们影响您的程序之前修复它们。

缺点

  • 这些自定义应用程序不像其他应用程序那样直观,并且它们也不那么有名,需要一些时间让用户学习它们。
  • 在您停止看到可能经常发生的误报之前,您可能需要等待足够的数据点才能进入。

哪种分析器适合你的需求?

选择什么类型的Node.js分析器实际上取决于您公司的需求以及您的预算。您是否正在寻求更全面,但可能更慢的故障排除所有错误和瓶颈?如果是这样,只要您耐心细致,就可以采用Node.js采样分析器。

跟踪分析器是一种更精简的方法,但它们在程序性能方面的监控方面有其局限性。APM分析器也很棒,因为您可以在自定义仪表板上创建自己的度量标准,但这些需要相当多的时间来学习和掌握您可能没有的。

您的选择应取决于您的时间表,预算和需求,因为没有一个通用的解决方案来优化您的编程实践。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

全国计算机一级选择题汇总,全国计算机一级考试选择题训练及答案

全国计算机一级考试选择题训练及答案练习题一1、 将二进制数110B左移一位后其等值的十进制数为()。A、6 B、1100 C、12 D、32、 某微型机的CPU中含有32条地址线、28位数据线及若干条控制信号线,对内存按字节寻址,其最大内存空间是()。A、4MBB、256MBC、2…

python url拼接_教你写python爬虫——用python爬原图

环境:python3.6 pycharm“猎物”:http://www.polayoutu.com (仅学习用)动机1:想要爬一些尺寸比较大(不是尺度)的美图养养眼,仅此而已;动机2:学习python爬虫&…

Devoxx的Red Hat Engineers提供了更多Java EE

现在是Devoxx比利时时间! 最后。 今天的一切都随着大学会议的开始而开始,会议本身将于明天早晨开始。 我们都非常兴奋,因为这是欧洲的重大事件。 红帽很荣幸今年再次成为赞助商。 我们将在现场举行14次会议,一个展位–提供啤酒&am…

济宁医学院计算机专业好就业吗,山东这3所医学院实力强,就业率高,中等生可捡漏...

原标题:山东这3所医学院实力强,就业率高,中等生可捡漏山东的医药类院校中,实力较强的是山东大学医学院、青岛大学医学院、山东第一医科大学、山东中医药大学,这4所医学院的录取分数都比较高。今天给大家介绍山东3所二批…

php读取西门子plc_PLC对模拟量信号,是怎么进行处理的?

模拟量信号是自动化过程控制系统中最基本的过程信号(压力、温度、流量等)输入形式。系统中的过程信号通过变送器,将这些检测信号转换为统一的电压、电流信号,并将这些信号实时的传送至控制器(PLC)。PLC通过计算转换,将这些模拟量信号转换为内…

Java 8 Streams:过滤和谓词否定

最近,有关LJC 邮件列表的成员在流中.filter方法中使用谓词否定的有趣讨论,因此我认为值得在博客文章中进行总结。 讨论的主题是使用.filter和否定谓词的方法。 这篇文章的代码可以在我的github帐户中找到 。 也许这就是您可能会想到的方式,…

sql server2008如何修改mac地址_如何查看本机的MAC地址和IP地址?

MAC地址是每台电脑或是手机设备中唯一进行识别的编码,IP地址则是路由器分配给电脑或是手机设备联网使用的一个编码。当我们电脑或无法上网,都需要查看IP地址是否正确。那如何查看MAC地址和IP地址呢?方法一:如何电脑已经成功联网了…

vlookup练习_大胆合并吧!VLOOKUP坐字法专做单元格合并查找

回复[目录]学习113篇Excel教程全套Excel视频教程,微信扫码观看编按:前面才讲了Excel家规,数据源表不能有合并单元格,今天就嘚瑟地呼吁“大胆合并”。为何?因为老菜鸟给大家带来了单元格合并查找利器VLOOKUP坐字法查找。…

第一代计算机主要应用领域为数据处理,第一代计算机主要应用领域为____。    A.数据处理 B.人工智能 C.科学计算 D.过程控制...

C、科学计算。一代主要用于科学计算,二代用与数据处理。计算机发明者约翰冯诺依曼。计算机是20世纪最先进的科学技术发明之一,对人类的生产活动和社会活动产生了极其重要的影响,并以强大的生命力飞速发展。它的应用领域从最初的军事科研应用扩…

vscode 书签_10个我必备的 VS code 拓展

推荐:Vue 3中令人激动的新功能:FragmentSuspense多v-modelVS Code是我最喜欢的文本编辑器。它是目前最可扩展的、最流行的代码编辑器。而且令人惊讶的是,它是由微软制作的(我知道)。在我看来,没有任何其他IDE或编辑器能比VS Code更…

u盘显示项目不在计算机zhng,能装在u盘上的操作系统有哪些?

满意答案zhng9211推荐于 2016.08.27采纳率:51% 等级:11已帮助:7556人可装在U盘上的操作系统现在的计算机技术简直日新月异,U盘,固态硬盘等等存储介质做的可以越来越大,并越来越便宜。电脑已经不是稀罕物…

推荐 -- 极客导航,让工作学习更有效率

给大家推荐一个导航,很实用;极客导航精心挑选网址,让您的工作更有效率; 传送门: http://www.gogeeks.cn/ 转载于:https://www.cnblogs.com/JsonShare/p/7064438.html

iphone型号表_机器人造iPhone,苹果奋斗八年,还是败给了富士康工人

8 年前,当蒂姆 库克在富士康观看机器人进行 iPad 实验生产视频时,似乎看到了新时代的希望。郭台铭曾表示,预计在 2014 年可以在富士康工厂中部署 100 万台机器人,进而实现高度自动化的「无人工厂」。机器之心报道,参与…

笔记本如何选择修复计算机,如何处理旧的笔记本电脑?这些操作必不可少!

原标题:如何处理旧的笔记本电脑?这些操作必不可少!如何处理旧的笔记本电脑?不要把它丢掉。那台旧笔记本电脑至少应适当回收。就算是打算仅回收旧笔记本电脑,也请确保有效擦除所有数据。备份如今,云服务如此…

Android开源工具项目集合

最近因为要去外派了,工欲善其事,必先利其器!所以又回顾了一下自己github上所收藏的项目,也算是温故而知新吧。 最流行的Android组件大全 http://www.open-open.com/lib/view/open1409108030307.html android开源项目分类汇总 http…

Android-Universal-Image-Loader学习笔记(3)--内存缓存

前面的两篇博客写了文件缓存。如今说说Android-Universal-Image-Loader的内存缓存。该内存缓存涉及到的类如图所看到的 这些类的继承关系例如以下图所看到的: 如同文件缓存一样,内存缓存涉及的接口也有两个:MemoryCacheAware 和MemoryCache&a…

css设置字体颜色怎么设,css里面怎么设置字体颜色?

在html中我们经常要用到css样式来美化html标签的一些不足之处,今天我们就来说说如何用css的基本样式来改变文本的颜色,文章通俗易懂,希望大家看完后能练习练习加深印象。一、首先我们先给大家看个html字体的基础代码:HTML中文网字…

visio科学图形包_科学网—科研必备:几款好用的流程图工具,助力你的论文/科研绘图...

写SCI论文常常会遇到一个问题——如何才能让读者通俗易懂地理解自己的研究?如果不能让读者了解研究过程,读者会对研究结果是否合理、如何应用存在疑问;尤其是期刊编辑和审稿人如果不能通过咱们的叙述,清楚地了解研究内容&#xff…

网络通信基础(草稿)

应用层:httpd/ssh/ 等软件 应用层功能:规定应用程序的数据格式。传输层:tcp/udp --> port,唯一标识一个主机上的某个进程 端口范围0-65535,0-1023为系统占用端口 传输层的功能:建立端口到端口的通信…

JSF范围教程– JSF / CDI会话范围

会话作用域跨越多个HTTP请求-响应周期(理论上是无限的)。 当您需要每个HTTP请求-响应周期进行一次交互时,请求作用域在任何Web应用程序中都非常有用。 但是,当您需要对属于用户会话的任何HTTP请求-响应周期可见的对象时&#xf…