PHP数组内存耗用太多问题的解决方法
2010-04-05 00:00
766 查看
因为这个是语言的问题,常规方案比较难以解决。下面是一种通过string 解决的方案。
这个例子用一个string 保存一个double 的数组。然后在使用的时候unpack出来。
当然,这会影响性能。要看具体的需求。
比如这样的情况下:
你有10个数组,每个数组10M (1百万数据左右),那么十个要花费 100M内存。
再加上10个人并发的话,内存就会严重不够了。
然后,在10个数组,不是每次都同时使用的。你可以,把他们保存成string
然后,在使用的时候,unpack某一个string变成一个数组。
$total = 100000; $double = ""; for ($i = 0; $i < $total; $i++) { $double .= pack("d", $i + 0.1); } for ($i = 0; $i < $total; $i++) { unpack("@" . ($i * 8) . "/d", $double); }
这个例子用一个string 保存一个double 的数组。然后在使用的时候unpack出来。
当然,这会影响性能。要看具体的需求。
比如这样的情况下:
你有10个数组,每个数组10M (1百万数据左右),那么十个要花费 100M内存。
再加上10个人并发的话,内存就会严重不够了。
然后,在10个数组,不是每次都同时使用的。你可以,把他们保存成string
然后,在使用的时候,unpack某一个string变成一个数组。
相关文章推荐
- PHP数组内存耗用太多问题的解决方法
- 解决PHP数组内存耗用太多的问题
- PHP实现求连续子数组最大和问题2种解决方法
- [乐意黎原创]PHP里由于数组编码导致json_encode输出为空白问题的解决方法
- php出现内存位置访问无效错误问题解决方法
- 解决PHP数组内存耗用太多的问题
- php出现内存位置访问无效错误问题解决方法
- php 操作数组array_merge使用时数组包含数字键名的问题解决方法
- C++解决大数组栈内存不够问题的方法分析
- 解决PHP数组内存耗用太多的问题
- 解决PHP数组内存耗用太多的问题
- PHP查询大量数据内存耗尽问题的解决方法
- PHP7 连oracle 11g 可能出现的pdo_oci_handle_factory,Check the character问题和解决方法
- 腾讯云服务器php+mysq+nginx配置出现的问题及解决方法(亲测)
- PHP4与PHP3中一个不兼容问题的解决方法
- 【转自loveifa】PHP 获取邮箱未读邮件的方法 根据receivemail改编而来,已解决乱码,编码问题
- Java数组最顶级的11大方法,帮助你解决工作流程问题
- 简单内存泄漏检测方法,解决Detected memory leaks!问题
- MYSQL+PHP5.2.17+IIS5.1不能连接数据库问题解决方法
- 微信小程序常见问题->上传文件后如何在后台(php)获取文件名解决方法