详细描述问题现象
服务变慢的具体表现形式往往可以提供一些思路,帮我们缩小排查范围。如:
服务时突然变慢 还是 长时间运行后变慢?
该现象是否重复出现?
(
虽然以下开发人员的回答经常会被谴责,甚至认为政治不正确,但这样的回答确实可以为排查问题提供一些信息。
测试:“程序有bug。”
开发:“不可能。在我机器上运行是好的。”
在这种情况下,“先认定程序逻辑没问题,去排查环境问题”也是比较合理的一个方向。
)
解决思路
1. 定位问题原因
1.1 先排查功能性原因
通过问题中描述的业务场景,自顶向下理清各模块调用链路;结合服务日志及其它相关运行时数据定位问题。
查看服务自身的业务日志。如果有异常日志,可从异常日志入手。
1.2 再排查非功能性原因
1.2.1 查看操作系统级别的资源使用情况
如,是否大量CPU、内存等资源被其它进程占用。
Linux 中可使用命令:
- dstat:一个综合性的系统资源使用状况查看工具
- top:查看CPU与内存占用率较高的进程数据(默认按CPU占用率降序排列)
- vmstat:查看CPU、内存、IO等性能相关的数据
- 如,上下文切换频率(cs)比系统中断频率(in)高很多,可能是多线程调度不合理
- pidstat:查看单个进程的CPU、内存、IO等相关数据
- iostat:查看各设备的IO状况
- free命令:查看操作系统内存使用情况
相关推荐
首先,OpenCV是JavaCV的核心部分,它是一个广泛使用的计算机视觉库,包含了众多图像处理和计算机视觉算法。在JavaCV 1.3中,你可以找到用于图像处理、特征检测、对象识别、人脸识别等功能的API。例如,高斯模糊、...
在这个特定的版本——mysql-connector-java-5.1.40-bin.jar中,我们找到了这个连接器的5.1系列的一个稳定版本。 首先,让我们了解JDBC的作用。JDBC是Sun Microsystems(现为Oracle公司)为Java编程语言设计的一套...
"mysql-connector-java-gpl-5.1.36"是MySQL Connector/J的一个特定版本,发布于GPL(GNU General Public License)许可下,意味着它是开源且可自由分发的。 MySQL Connector/J 5.1.36是针对MySQL 5.1系列数据库...
虽然"ckeditor-java-core-3.5.3"已经较旧,但开发者应考虑适时升级到最新版本,以获取更好的性能、更多的功能和安全修复。CKEditor的最新版本通常会提供更好的用户体验和更完善的API。 通过理解和掌握这些知识点,...
mysql驱动包 mysql-connector-java-5.1.13-bin.jar 方便快捷获取。。。
Java是一种广泛使用的面向对象的编程语言,以其平台独立性、安全性、健壮性和高性能而闻名。这个"java基础教程----精华版"显然是一份精心整理的资料,旨在帮助初学者快速掌握Java编程的基础知识。下面将详细介绍Java...
从javacv-platform-1.3.3-bin.zip中抽出来的:javacpp.jar、javacv.jar、javacv-platform.jar、opencv.jar、opencv-android-arm.jar、opencv-android-x86.jar、opencv-linux-armhf.jar 、opencv-linux-ppc64le.jar、...
java3d-1_3_1-windows-i586-opengl-sdk.exe
《Core Java.JAVA核心技术(中文版)》是学习Java编程的重要参考资料,主要涵盖了Java语言的基础以及进阶知识。这本书深入浅出地讲解了Java的核心概念和技术,为读者提供了全面而细致的学习路径。以下是对该书内容的...
java图片处理工具类JAR包 java-image-scalingjar
mysql-connector-java-5.1.30-bin.jar 最新的mysql jdbc
这个压缩包 "selenium-java-2.47.1.zip" 包含了Selenium的Java版本,具体是2.47.1的更新,发布于2015年8月。这个版本在当时是一个稳定且广泛使用的版本,它提供了丰富的API,支持多种浏览器,并且可以与各种测试框架...
《基于Java-JSP-Servlet-Tomcat-SQLServer的社区医疗管理系统详解》 社区医疗管理系统是一种信息化解决方案,它旨在提高医疗服务的效率和质量,优化资源配置,满足城市社区居民的医疗需求。本文将深入探讨该系统的...
`java-unrar-0.3.jar`是一个库,它允许Java开发者处理RAR文件,无需依赖外部命令行工具,如WinRAR。这个库为Java提供了一个简单易用的API,可以方便地实现RAR文件的解压功能。 `java-unrar-0.3.jar`库是由Andrei ...
首先,我们来了解一下 `selenium-java-2.44.0.jar`。这是一个预编译的Java库,其中包含了Selenium WebDriver的Java绑定。WebDriver是Selenium的一个核心部分,它提供了一个编程接口,允许测试脚本直接控制浏览器。...
《深入体验Java_Web开发内幕-核心基础》是张孝祥著作的一本关于Java Web开发的深度解析书籍,旨在帮助读者全面理解并掌握Java Web开发的核心技术。这本书以高清扫描版的形式提供,使得读者能够在电子设备上清晰地...
JAVA连MySQL驱动mysql-connector-java-5.1.25.jar
用于连接mysql数据库. mysql-connector-java-5.0.4-bin.jar
javacv-core-1.3.zip包含javacv.jar,javacpp.jar和javacv-platform.jar三个核心jar包