一次线上java 应用响应时间过长问题的排查链滴 一次线上 java 应用响应时间过长问题的排查 作者:xinzhongtianxia 原文链接:https://ld246.com/article/1569574881351 来源网站:链滴 许可协议:署名-相同方式共享 4.0 国际 (CC BY-SA 4.0)最近接手一个老 java 应用,没多久接到响应时间太长的报警,整个排查过程还是挺有意思的, 录一下。
整个过程中,设计到 cpu,内存,垃圾回收,引用,spring, 单例 等等知识,整个下来,心情愉悦。< p>接到报警
吃完晚饭回来,接到报警短信,服务响应时间太长,达到 2s 以上。
第一反应,怎么可能,这个应用很简单,就提供了几个查询接口,QPS 满的状态。
即使是 CMS,也不能避免传说中的 stop the world,所以响应时间变长了。
但是,现在问题来了,Full GC 回收不掉的对象都是啥啥啥?分析 java 堆内存
先把线上流量从这台机器切走,然后 dump,分析后发现,一共 160 多万个 PoolHttpConnecti nManager 对象占领了绝大多数内存。
0 码力 | 3 页 | 247.74 KB | 1 年前3
 Hello 算法 1.0.0b1 Java版. . . . . . . . . . . . . . . . . . 11 2. 复杂度分析 12 2.1. 算法效率评估 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.2. 时间复杂度 . . . . . . . . . . . . . . . . . . . . . . 3. 空间复杂度 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 2.4. 权衡时间与空间 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 2.5. 小结 . . . . . 如果您是「算法大佬」,希望可以得到你的宝贵意见建议,或者一起参与创作。 � 前置条件 您需要至少具备任一语言的编程基础,能够阅读和编写简单代码。 0.1.2. 内容结构 本书主要内容有: ‧ 复杂度分析:数据结构与算法的评价维度、算法效率的评估方法。时间复杂度、空间复杂度,包括推算 方法、常见类型、示例等。 ‧ 数据结构:常用的基本数据类型,数据在内存中的存储方式、数据结构分类方法。数组、链表、栈、队列、 散列表、树0 码力 | 186 页 | 14.71 MB | 1 年前3
 Hello 算法 1.0.0b2 Java版. . . . . . . . . . . . . . . . . . 11 2. 复杂度分析 12 2.1. 算法效率评估 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.2. 时间复杂度 . . . . . . . . . . . . . . . . . . . . . . 3. 空间复杂度 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 2.4. 权衡时间与空间 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 2.5. 小结 . . . . . 如果您是「算法大佬」,希望可以得到你的宝贵意见建议,或者一起参与创作。 � 前置条件 您需要至少具备任一语言的编程基础,能够阅读和编写简单代码。 0.1.2. 内容结构 本书主要内容有: ‧ 复杂度分析:数据结构与算法的评价维度、算法效率的评估方法。时间复杂度、空间复杂度,包括推算 方法、常见类型、示例等。 ‧ 数据结构:常用的基本数据类型,数据在内存中的存储方式、数据结构分类方法。数组、链表、栈、队列、 散列表、树0 码力 | 197 页 | 15.72 MB | 1 年前3
 Hello 算法 1.0.0b5 Java版——邓俊辉,清华大学计算机系教授 “如果我当年学数据结构与算法的时候有《Hello 算法》,学起来应该会简单 10 倍!” ——李沐,亚马逊资深首席科学家 致谢 本书在开源社区众多贡献者的共同努力下不断成长。感谢每一位投入时间与精力的撰稿人,他们是 (按照 GitHub 自动生成的顺序):krahets, justin‑tse, sjinzh, nuomi1, Reanon, Gonglja, S‑N‑O‑R‑ L‑A‑X 本书的代码审阅工作由 Gonglja, gvenusleo, hpstory, justin‐tse, krahets, nuomi1, Reanon, sjinzh 完 成(按照首字母顺序排列)。感谢他们付出的时间与精力,正是他们确保了各语言代码的规范与统一。 i 目 录 第 0 章 前言 1 0.1 关于本书 . . . . . . . . . . . . . . . . . . . . . . . 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 第 2 章 复杂度分析 16 2.1 算法效率评估 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.20 码力 | 376 页 | 30.69 MB | 1 年前3
 Hello 算法 1.1.0 Java版attention.”从这个意义上看,这本 书并非完全“免费”。为了不辜负你为本书所付出的宝贵“注意力”,我会竭尽所能,投入最大的“注意力” 来完成本书的创作。 本人自知学疏才浅,书中内容虽然已经过一段时间的打磨,但一定仍有许多错误,恳请各位老师和同学批评 指正。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。 动画在 PDF 内的展示效果受限,可访问 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 第 2 章 复杂度分析 17 2.1 算法效率评估 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.2 2 迭代与递归 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.3 时间复杂度 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2.4 空间复杂度 . . . . .0 码力 | 378 页 | 18.47 MB | 1 年前3
 Hello 算法 1.0.0 Java版attention.”从这个意义上看,这本 书并非完全“免费”。为了不辜负你为本书所付出的宝贵“注意力”,我会竭尽所能,投入最大的“注意力” 来完成本书的创作。本人自知学疏才浅,书中内容虽然已经过一段时间的打磨,但一定仍有许多错误,恳请 各位老师和同学批评指正。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。动画在 PDF 内的 展示效果受限,可访问 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 第 2 章 复杂度分析 17 2.1 算法效率评估 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.2 2 迭代与递归 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.3 时间复杂度 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2.4 空间复杂度 . . . . .0 码力 | 376 页 | 17.59 MB | 1 年前3
 Hello 算法 1.2.0 简体中文 Java 版attention.”从这个意义上看,这本 书并非完全“免费”。为了不辜负你为本书所付出的宝贵“注意力”,我会竭尽所能,投入最大的“注意力” 来完成本书的创作。 本人自知学疏才浅,书中内容虽然已经过一段时间的打磨,但一定仍有许多错误,恳请各位老师和同学批评 指正。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。 动画在 PDF 内的展示效果受限,可访问 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 第 2 章 复杂度分析 17 2.1 算法效率评估 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.2 2 迭代与递归 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.3 时间复杂度 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2.4 空间复杂度 . . . . .0 码力 | 379 页 | 18.48 MB | 10 月前3
 Hello 算法 1.0.0b4 Java版com/krahets/hello‑algo 仓库。动画在 PDF 内的 展示效果受限,可访问 hello‑algo.com 网页版以获得更优的阅读体验。 致谢 本书在开源社区众多贡献者的共同努力下不断成长。感谢每一位投入时间与精力的撰稿人,他们 是(按照 GitHub 自动生成的顺序):krahets, sjinzh, justin‑tse, Reanon, nuomi1, Gonglja, S‑N‑O‑ R‑L‑A‑X 本书的代码审阅工作由 Gonglja, gvenusleo, hpstory, justin‐tse, krahets, nuomi1, Reanon, sjinzh 完 成(按照首字母顺序排列)。感谢他们付出的时间与精力,正是他们确保了各语言代码的规范与统一。 推荐语 “一本通俗易懂的数据结构与算法入门书,引导读者手脑并用地学习,强烈推荐算法初学者阅读。” ——邓俊辉,清华大学计算机系教授 “如果我当年学数据结构与算法的时候有《Hello 13 2.1. 算法效率评估 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.2. 时间复杂度 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.3. 空间复杂度 .0 码力 | 342 页 | 27.39 MB | 1 年前3
 《Java 应用与开发》课程讲义 - 王晓东59 6.1.2 JVM 内存模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 6.2 Java 程序内存运行分析 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 iii 6.2.1 预备知识和所用讲解程序 . . . . . . . 61 6.2.2 程序调用过程 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 6.2.3 Java 程序运行内存分析小结 . . . . . . . . . . . . . . . . . . . . . . 64 6.3 Java 内存管理建议 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 13.4.3 对象序列化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 ix 13.4.4 实现对象序列化 . . . . . . . . . . . . . . . . . . . . . . . . . . .0 码力 | 330 页 | 6.54 MB | 1 年前3
 Hello 算法 1.2.0 繁体中文 Java 版小結 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 第 2 章 複雜度分析 17 2.1 演算法效率評估 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.2 迭代與遞迴 若你是演算法“大神”,我們期待收到你的寶貴建議,或者一起參與創作。 前置條件 你需要至少具備任一語言的程式設計基礎,能夠閱讀和編寫簡單程式碼。 0.1.2 內容結構 本書的主要內容如圖 0‑1 所示。 ‧ 複雜度分析:資料結構和演算法的評價維度與方法。時間複雜度和空間複雜度的推算方法、常見型別、 示例等。 ‧ 資料結構:基本資料型別和資料結構的分類方法。陣列、鏈結串列、堆疊、佇列、雜湊表、樹、堆積、 圖等 0‑8 演算法學習路線 0.3 小結 ‧ 本書的主要受眾是演算法初學者。如果你已有一定基礎,本書能幫助你系統回顧演算法知識,書中源程 式碼也可作為“刷題工具庫”使用。 ‧ 書中內容主要包括複雜度分析、資料結構和演算法三部分,涵蓋了該領域的大部分主題。 ‧ 對於演算法新手,在初學階段閱讀一本入門書至關重要,可以少走許多彎路。 ‧ 書中的動畫圖解通常用於介紹重點和難點知識。閱讀本書時,應給予這些內容更多關注。0 码力 | 379 页 | 18.79 MB | 10 月前3
共 35 条
- 1
 - 2
 - 3
 - 4
 













