文档章节

关于PHP扩展memcache和memcached的区别

 寄凡
发布于 2017/01/11 23:25
字数 427
阅读 27
收藏 0

Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信。

PHP的客户端目前常用的有两个,一个是memcache,另一个是memcached,两个客户端只差了一个字母,这两个的区别是什么呢?

  • 服务器中的memcached进程跑的是memcached服务;
  • 实现了memcached接口的PHP扩展memcache,在PHP框架之内实现的;
  • 实现了memcached接口的PHP扩展memcached,基于libmemcached实现;

手册是最好的说明(大家没事还是多看看官方说明吧):
memcached
memcached类官方说明
memcached扩展包

memcache
memcache类官方说明
memcache扩展包

下面是PHP官网给予的相应解释 : For those confuse about the memcached extension and the memcache extension, the short story is that both of them are clients of memcached server, and the memcached extension offer more features than the memcache extension.

大致意思是memcached extension和memcache extension都是memcached server的客户端,memcached extension比memcache extension的功能要多。

两个都支持一致性hash算法:

  • memcache
# 修改php.ini
[Memcache]
Memcache.allow_failover = 1 
Memcache.hash_strategy = consistent
Memcache.hash_function = crc32
  • memcached
$memcachedObj = new memcached();
$memcachedObj->setOption(Memcached::OPT_DISTRIBUTION,Memcached::DISTRIBUTION_CONSISTENT);
$memcachedObj->setOption(Memcached::OPT_LIBKETAMA_COMPATIBLE,true); 

另外说一下session在memcached(注意这个是指memcached服务)中的存储,下面是配置

# memcache:
session.save_handler = memcache
session.save_path = "tcp://localhost:11211" 
# memcached:
session.save_handler = memcached
session.save_path = "localhost:11211"

© 著作权归作者所有

粉丝 0
博文 12
码字总数 4800
作品 0
昌平
私信 提问
关于memcache的一些知识

Mencached、memcached、memcache的区别: 区分开三种写法来帮你理解。Memcached、memcached、memcache。 其中首字母大写的Memcached,指的是Memcached服务器,就是独立运行Memcached的后台服...

kobe52099
2018/06/26
0
0
php扩展memcached编译安装

memcache是一个开源、高性能对象缓存系统的项目名,作为服务端,它的守护进程名称是memcached。 官网:http://memcached.org PHP有两个memcache客户端:php memcache和php memcached。这两个...

hiwill
2016/06/15
172
0
Windows7 x64在Wampserver上安装memcache

Windows7 x64在Wampserver上安装memcache 放假重装了一下系统,win7 x64的,而我使用的win下的开发环境也升级到了最新版,所集成的是php5.3.13,一切很顺利,但是在安装php的memcache扩展的时...

真座山雕
2012/10/30
167
0
PHP 常用缓存 APC,Memcache & Memcached

APC:Alternative PHP Cache(APC)是 PHP 的一个免费公开的优化代码缓存。它用来提供免费,公开并且强健的架构来缓存和优化 PHP 的中间代码。 链接地址:http://php.net/manual/en/book.apc...

Shamrocker
2012/09/03
440
0
Centos-php_memcached扩展安装

Centos-php-memcached 扩展 注意要安装的是PHP的Memcached扩展,跟PHP的memcahe扩展有点区别。 phpmemcached支持binary protocol 协议,而phpmemcache协议不支持,php_memcached支持对同一k...

weixingo
2015/10/12
706
0

没有更多内容

加载失败,请刷新页面

加载更多

x002-语言元素

变量命令规则 硬性规则: 变量名由字母(广义的Unicode字符,不包括特殊字符)、数字和下划线构成,数字不能开头。 大小写敏感(大写的a和小写的A是两个不同的变量)。 不要跟关键字(有特殊...

伟大源于勇敢的开始
今天
4
0
nginx反向代理配置

nginx配置文件位置/usr/local/nginx/conf/nginx.conf 配置文件修改: # cd /usr/local/nginx/conf # vim nginx.conf server {listen 80;server_name localhost;#charset k......

行者终成事
今天
5
0
OSChina 周日乱弹 —— 这是假的,和我之前的不一样

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 小小编辑推荐:《男孩》-梁博 / 陶孟童 / 肖和东 / 高誉容 《男孩》-梁博 / 陶孟童 / 肖和东 / 高誉容 手机党少年们想听歌,请使劲儿戳(这里...

小小编辑
今天
8
0
Rust学习笔记一 数据类型

写在前面 我也不是什么特别厉害的大牛,学历也很低,只是对一些新语言比较感兴趣,接触过的语言不算多也不算少,大部分也都浅尝辄止,所以理解上可能会有一些偏差。 自学了Java、Kotlin、Python、...

MusiCodeXY
今天
5
0
Java 脚本引擎入门

Java Script Engine Java 脚本引擎可以将脚本嵌入Java代码中,可以自定义和扩展Java应用程序,自JDK1.6被引入,基于Rhino引擎,JDK1.8后使用Nashorn引擎,支持ECMAScript 5,但后期还可能会换...

阿提说说
今天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部