Regis Memory Improvement

Regis Memory Improvement

gzcompress / gzuncompress

It is just very easy. And the performance is great as well.

<?php

namespace JobConsumerPHP;

require __DIR__ . '/../../vendor/autoload.php';

class CompressUtil
{

private $ioc = null;

public function __construct($ioc)
{
// set up ioc container
$this->ioc = $ioc;
}

public function compress($raw){
return gzcompress($raw);
}

public function uncompress($encode){
return gzuncompress($encode);
}

}

Here is the test case
<?php

use \JobConsumerPHP\IOCUtil;

/**
*
* RUNNING_ENV=test phpunit --bootstrap vendor/autoload.php tests/perf/CompressUtilPerfTest
*
* Created by PhpStorm.
* User: carl
* Date: 3/1/17
* Time: 2:57 PM
*/
class CompressUtilPerfTest extends PHPUnit_Framework_TestCase
{

protected $compressUtil;

protected function setUp()
{
$ioc = new IOCUtil();
$this->compressUtil = $ioc->getService("compressUtil");
}

public function testCompress()
{
$raw = " Company Description sample string ";

for ($i = 0; $i < 1000; $i++) {
$encode = $this->compressUtil->compress($raw);
$this->compressUtil->uncompress($encode);
}
}

}

References:
http://labs.octivi.com/how-we-cut-down-memory-usage-by-82/
http://php.net/manual/en/function.gzcompress.php
http://stackoverflow.com/questions/621976/which-compression-method-to-use-in-php

http://stackoverflow.com/questions/3202218/how-does-gzcompress-work
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值