class MemcacheOpr은 Memcached를 확장합니다
{
private static $instance = null;
private static $host = '127.0.0.1';
private static $port = 11211;
공개 정적 함수 getInstance()
{
if (!(self::$instance instanceof Memcached)) {
self::$instance = new Memcached();
self ::$instance->addServer(self::$host, self::$port);
}
return self::$instance;
}
}
ini_set(' memory_limit','1024M'); //현재 페이지에서 사용하는 최대 메모리는 기본적으로 128M입니다. 이를 초과하는 경우 재설정해야 합니다.
ini_set('max_execution_time',60); /php 페이지의 최대 실행 시간, 기본값은 30초입니다. 초과하는 경우 재설정해야 합니다.
$mcache = MemcacheOpr::getInstance();//싱글톤 모드 호출
$mcache- >flush(); 🎜>$mcache->delete('string1m');
$mcache->delete('string2m');
$mcache->delete('string3m');
$mcache- >delete('string4m');
$mcache->delete('string5m');
for($i=0;$i $mcache ->delete('string'.$i);
}
/*$mcache->set('somewords','뭔가 배웠나요?');
$output = $ mcache->get('somewords');
echo "output=[$output]
";*/
$begintime = microtime(TRUE);
$input = str_repeat('무엇',1024*1024*16*2*1.5); //192M
$input = substr($input,0,-512);
$mcache-> set('string1m', $input);//192M 192M에 저장된 5개의 콘텐츠가 왜 성공할 수 있을까요? Memcached가 메모리
$mcache->set('string2m',$input.'areyou2');
$mcache->set('string3m',$input . 'areyou3');
$mcache->set('string4m',$input.'areyou4');
$mcache->set('string5m',$input.'areyou5')
/*for($i=0;$i $mcache->set('string'.$i, $input);
}*/
$input = str_repeat('what',1048576); //여기에는 실제로 4M의 내용이 저장됩니다. memcached가 압축을 켜기 때문에 실제 저장되는 내용이 매우 작더라도 문제가 없습니다.
for($i=0;$i $mcache->set('string'.$i,$input);
}
$ mcache->delete('somewords');
$during = microtime(TRUE) - $begintime;
echo '총 시간:'.$during.'s
';
file_put_contents('/tmp/string5m.log',$mcache->get('string1m'));
//echo '$output의 길이:'.strlen($output).",output=[ $output]
";
/*$allKeys = $mcache->getAllKeys();
var_dump($allKeys);
print_r($mcache-> getStats());*/