
提高 bufferedinputstream 转换速度的优化
为了优化从 http 加载大文件(如图片)的性能,需要解决如下问题:
等待读取完成:原始代码将读取完成的数据全部缓存到内存中,导致读取时间过长。阻塞读取:读取过程中,响应一直等待,无法并行处理其他任务。连接未复用:未使用连接复用技术,导致每次请求都重新建立连接。资源未释放:连接未释放,造成内存泄露。
解决方案:
方案 1:原始流复制
lucene索引优化 中文WORD版
本文档主要讲述的是lucene索引优化;这篇文章主要介绍了如何提高Lucene的索引速度。介绍的大部分思路都是很容易尝试的,当然另外一部分可能会加大你程序的复杂度。所以请确认索引速度确实很慢,而且很慢的原因确实是因为Lucene自身而造成的;希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看
0 查看详情
// 缓冲区越大,效率越高,但注意内存占用byte[] buffer = new byte[1024];
方案 2:使用第三方库
ioutil.copy(bis, out);
方案 3:nio 非阻塞传输
// 缓冲区越大,效率越高ByteBuffer byteBuffer = ByteBuffer.allocate(8192);
其他优化:
使用连接复用技术(如 ok-http)。及时关闭资源。
以上就是如何提高BufferedInputStream读取大文件速度?的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/947791.html
微信扫一扫
支付宝扫一扫