NIO客户端模式和服务端模式性能测试

本文写作起因: 帮财务企划项目的同事解决一个 Excel 大文件读取时使用 apachePOI 导致内存飙高,并且耗时大的问题. 引发了使用 NIO 的方式读取 excel 文件, 与项目组的架构师讨论到了客户端 NIO 和服务端 NIO 的模式及建议使用常见.

先贴出预估结论:

客户端 NIO 模式适用于大文件,可以高效处理, 合理利用 CPU 资源.

服务端 NIO 模式适用于处理小文件, 可以快速处理的请求, 否则 效果甚至不如BIO 对每个请求新建线程处理.

验证:  待补充, 客户端使用大小文件进行压力测试,   服务端 NIO 分别采用小文件/大文件的请求. 在 service 层睡眠指定时间模拟处理耗时 或读写文件进行测试.

验证服务端模式时可以 顺便对比 springboot1.x 和 springboot2.x (nio 实现) 的处理耗时

发表评论

电子邮件地址不会被公开。 必填项已用*标注