数码资讯
一个缓存APC效率高于Memcached的演示代码
复制代码代码如下所示: < PHP memcachehost美元= 'localhost; memcacheport美元= '11211; 功能microtime_float(){ 列表(USEC美元美元,SEC)=爆炸( 返回((浮动)$ USEC +(浮动)$秒); } 函数运行时(t1){ 返
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
复制代码代码如下所示:
< PHP
memcachehost美元= 'localhost;
memcacheport美元= '11211;
功能microtime_float(){
列表(USEC美元美元,SEC)=爆炸(
返回((浮动)$ USEC +(浮动)$秒);
}
函数运行时(t1){
返回number_format(((microtime_float()至T1)×1000, 4)。'ms;
}
StartTime = microtime_float(美元);
cache_time美元= 30;
回声init =====。运行时(美元开始时间);
为SQL =SELECT * FROM HX id是10006;
mem_sql_key美元= MD5($ SQL);
美元microtime_float T1 =();
回声apc_read ===== ;
基于美元= apc_fetch($ mem_sql_key);
回声运行时(t1);
美元microtime_float T1 =();
apc_store(mem_sql_key美元。'_test,基于美元美元,cache_time);
回声apc_write ===== ;
回声运行时(t1);
美元microtime_float T1 =();
MEM =新的Memcache美元;
美元($ memcachehost MEM ->连接,memcacheport美元);
回声mem_connet =====。运行时($ T1);
美元microtime_float T1 =();
基于美元美元= MEM ->得到($ mem_sql_key);
回声mem_read ===== ;
回声运行时(t1);
美元microtime_float T1 =();
$ MEM ->设置(mem_sql_key美元。'_test,基于美元,0美元,cache_time);
回声mem_write ===== ;
回声运行时(t1);
>
提前,SQL结果缓存在APC和缓存,然后读写速度测试。
在本地窗口上,结果是:
init ===== 0.0341ms
apc_read ===== 0.0439ms
apc_write ===== 0.0920ms
mem_connet ===== 11.0571ms
mem_read ===== 0.2630ms
mem_write ===== 0.2270ms
在服务器Linux结果上:
init ===== 0.0131ms
apc_read ===== 0.0520ms
apc_write ===== 0.0489ms
mem_connet ===== 0.0501ms
mem_read ===== 0.1030ms
mem_write ===== 0.0801ms
当然,重复刷新会有不同的值,这里只有更高的平均值。
胜利没有任何参考,主要是关于Linux上的结果。
不要把时间,APC的读写速度大约快一倍的时间来计算memcache_connect memcached。两倍的速度。
APC是能够实现的PHP文件操作码缓存,实现用户缓存的好东西。
因此,如果所有的功能都可以在一个服务器上的网站时,尺寸小的完成,然后缓存方案应该首先APC,没有考虑memcached。然而,如果网站的规模将继续扩大,这段时间表现的差异可以忽略,而Memcached应部署。
此外,在使用memcached服务器,最好使用内联网。否则,影响路由下,Memcached经常连接时间(超过100ms),会拿出两倍的宽带流量。
< PHP
memcachehost美元= 'localhost;
memcacheport美元= '11211;
功能microtime_float(){
列表(USEC美元美元,SEC)=爆炸(
返回((浮动)$ USEC +(浮动)$秒);
}
函数运行时(t1){
返回number_format(((microtime_float()至T1)×1000, 4)。'ms;
}
StartTime = microtime_float(美元);
cache_time美元= 30;
回声init =====。运行时(美元开始时间);
为SQL =SELECT * FROM HX id是10006;
mem_sql_key美元= MD5($ SQL);
美元microtime_float T1 =();
回声apc_read ===== ;
基于美元= apc_fetch($ mem_sql_key);
回声运行时(t1);
美元microtime_float T1 =();
apc_store(mem_sql_key美元。'_test,基于美元美元,cache_time);
回声apc_write ===== ;
回声运行时(t1);
美元microtime_float T1 =();
MEM =新的Memcache美元;
美元($ memcachehost MEM ->连接,memcacheport美元);
回声mem_connet =====。运行时($ T1);
美元microtime_float T1 =();
基于美元美元= MEM ->得到($ mem_sql_key);
回声mem_read ===== ;
回声运行时(t1);
美元microtime_float T1 =();
$ MEM ->设置(mem_sql_key美元。'_test,基于美元,0美元,cache_time);
回声mem_write ===== ;
回声运行时(t1);
>
提前,SQL结果缓存在APC和缓存,然后读写速度测试。
在本地窗口上,结果是:
init ===== 0.0341ms
apc_read ===== 0.0439ms
apc_write ===== 0.0920ms
mem_connet ===== 11.0571ms
mem_read ===== 0.2630ms
mem_write ===== 0.2270ms
在服务器Linux结果上:
init ===== 0.0131ms
apc_read ===== 0.0520ms
apc_write ===== 0.0489ms
mem_connet ===== 0.0501ms
mem_read ===== 0.1030ms
mem_write ===== 0.0801ms
当然,重复刷新会有不同的值,这里只有更高的平均值。
胜利没有任何参考,主要是关于Linux上的结果。
不要把时间,APC的读写速度大约快一倍的时间来计算memcache_connect memcached。两倍的速度。
APC是能够实现的PHP文件操作码缓存,实现用户缓存的好东西。
因此,如果所有的功能都可以在一个服务器上的网站时,尺寸小的完成,然后缓存方案应该首先APC,没有考虑memcached。然而,如果网站的规模将继续扩大,这段时间表现的差异可以忽略,而Memcached应部署。
此外,在使用memcached服务器,最好使用内联网。否则,影响路由下,Memcached经常连接时间(超过100ms),会拿出两倍的宽带流量。
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。