深入浅出 Java FileChannel 的堆外内存使用
从一个线上系统 OOM 讲起在一个风和日丽的下午(标准开头),突然收到用户紧急反馈,线上系统 IoTDB 查询卡住。经过众人一番排查,发现 IoTDB 在读取数据文件时使用到了 FileChannel,而 FileChannel 使用的堆外内存引发了系统 OOM。定位到问题之后,也成功帮助用户解决了问题。由这个线上问题,引出了本文的主题:FileChannel 中堆外内存的使用。首先介绍一些背景知识:1、关于 FileChannel:Java NIO 是一种基于通道(Channel)和缓冲区(Bu
原创
2022-02-21 22:17:46 ·
940 阅读 ·
1 评论