php memcached安装与使用
发布:smiling 来源: PHP粉丝网 添加日期:2014-08-05 17:06:14 浏览: 评论:0
memcache模块是一个高效的守护进程,提供用于内存缓存的过程式程序和面向对象的方便的接口,特别是对于设计动态web程序时减少对数据库的访问.memcache也提供用于通信对话(session_handler)的处理.
1.1.memcache在php.ini中的配置项列表 memcache在php.ini中的配置项列表
名称 默认值 是否可变 改变日志
- memcache.allow_failover
- “1”
- php_ini_all
- available since memcache 2.0.2.
- memcache.max_failover_attempts
- "20"
- php_ini_all
- available since memcache 2.1.0.
- memcache.chunk_size
- "8192"
- php_ini_all
- available since memcache 2.0.2.
- memcache.default_port
- "11211"
- php_ini_all
- available since memcache 2.0.2.
- memcache.hash_strategy
- "standard"
- php_ini_all
- available since memcache 2.2.0.
- memcache.hash_function
- "crc32"
- php_ini_all
- available since memcache 2.2.0.
- session.save_handler
- "files"
- php_ini_all
- supported since memcache 2.1.2
- session.save_path
- ""
- php_ini_all
- supported since memcache 2.1.2 ////开源代码phpfensi.com
有关 php_ini_* 常量进一步的细节与定义参见php手册php.ini 配置选项.下面摘一段代码,给大家一个直观的印象:(假设memcached安装在172.10.10.10上面,端口号12121):
- $memcache = new memcached();
- $memcahce->connect('172.10.10.10', 12121);
- $memcache->set('key', 'value');//开源代码phpfensi.com
- $memcache->get('key');
上面的主要完成了memcached的简单操作流程:连接memcached服务器,设置值,取值('key'的值是'value');
这里需要向大家说明一下addserver函数和connect函数,addserver是将多个服务器放在连接池,而connect只是将连接某一台服务器,如果在使用了addserver,再使用connect,这里就会只使用一台服务器,以下代码是简单模拟的客户端操作:
- $fp = fsocketopen('172.10.10.10', 12121, $errorno, $errstr, 1);
- if(!$fp)
- echo "$errstr";
- else
- {
- $out = "get key rn";
- fwrite($out);
- while(!feof($fp))
- $str . = fgets($fp);
- if(stripos($str, 'end') ===0)//开源代码phpfensi.com
- exit("no value find")
- $arr = implode('rn', $str);
- echo $arr[1];
- }
简单解释上面的代码,使用fsocketopen打开服务器的socket通讯接口,然后向其发送get key命令,然后获取返回的数据,并解析返回的数据,这里都没有做异常的处理,在编程的时候要填 memcached 是一个键值存储系统,它将关键数据存储在内存中,大大减少存取数据的时间,使用memcached的好处不言而喻,它不仅减少了系统访问数据库的压力,而且提高系统的反应速度,至于什么样的系统需要使用memcache,笔者建议数据量大,访问频繁系统可以采取memcached作为缓存的中间层.
使用memcached的缺点除了增加程序的代码量,还有就是不能保证数据库的实时性,另外在第一次初始化数据库会需要额外的时间,但是这些的缺点比起它的优点是很微不足道.
Tags: php memcached 安装使用
相关文章
- ·PHP中通过Web 执行C/C++应用程序(2013-11-13)
- ·用PHP实现Ftp用户的在线管理(2013-11-13)
- ·用PHP自动把纯文本转换成Web页面(2013-11-13)
- ·用实例分析PHP5异常处理(2013-11-13)
- ·php5的simplexml解析错误(2013-11-13)
- ·PHP后门的隐藏技巧测试报告(2013-11-13)
- ·PHP缓存技术详谈(2013-11-27)
- ·利用PHP自定义错误处理器处理出错信息(2013-11-27)
- ·PHP作wap开发时遇到的问题(2013-11-27)
- ·php编写大型网站问题集(2013-11-27)
- ·php测试性能代码(2013-11-28)
- ·php 安全register globals设置为TRUE的危害(2013-11-28)
- ·XSLTProcessor 中 registerPHPFunctions 后无法调用 php 函数(2013-11-30)
- ·PHP中常用三种缓存技术(2013-11-30)
- ·新浪微博PHP版SDK的导致20007错误(2013-12-03)
- ·linux中phpMyAdmin错误提示Wrong permissions on configuration file, should no(2013-12-04)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)