亿贝上海研发中心招聘 广告平台部门大量招人 - 2020/04/16
内部推荐 联系(base64 encoding): eGlhdGlhbkBlYmF5LmNvbQ==
以下是最新(2020/02/18)的职位列表: 具体 JD 见 https://www.ajinga.com/company-detail-new/5790/




内部推荐 联系(base64 encoding): eGlhdGlhbkBlYmF5LmNvbQ==
以下是最新(2020/02/18)的职位列表: 具体 JD 见 https://www.ajinga.com/company-detail-new/5790/




类似 HashMap, WeakHashMap 也不是线程安全的类型. 在该类的说明中, 明确有说:
Like most collection classes, this class is not synchronized. A
synchronized WeakHashMap may be constructed using the
Collections.synchronizedMap method.
和 HashMap 类似, 问题发生在扩容移动数据的时候. 当遇到这个问题的时候, 一开始看到有个奇怪的地方, 就是这个 WeakHashMap.Entry 有 2 个 next 字段. 那么到底是怎么回事呢?
正常的线上 Java 诊断使用 Btrace, 阿里开源的 Arthas 等工具. 不过偶尔还是要使用最古老的方式, 比如不能 copy 太大的工具去线上. 这里记录一下这种古老的方式.
有各种问题会引起 Java 线程卡死, 导致应用程序最终不能正常服务. 通常加上合适的 timeout 时间会使问题缓解. 这里列举一些例子.
之前每次做 heap/thread dump 都要登录到对应的机器上去执行几行命令, 后来有人集成了采集 dump 功能到 slack, 每次复制机器名到 slack 就可以采集 dump 了. 不过还可以通过 slat API 去采集 dump, 只要给 salt API 一个脚本就可以了.