Memcache 是一套分布式高速缓存系统,php
分布式:以在多台操做系统中同时安装 Memcache 服务,能够达到很好的集群效果。数据库
高速:Memcache 全部的数据都是维护在内存中的。vim
当应用 访问量 特别大的时候,数据库的访问量也会特别大。Memcache 的出现,能够在运用和数据库之间增长一个缓冲层。那么以前在数据库中读取过的数据在第二次读取的时候,能够直接去访问 Memcache 去读取这些数据,从而减轻数据库的压力。缓存
Memcache 至关于只有一张表的数据库。这张表有二个字段,分别是主键 Key,和数据 Value。Key 用来保证咱们查找值得惟一性。bash
若是数据丢失也不会对系统形成太大的影响。当系统断电或者重启的时候,内存会被清空,以前保存在 Memcache 当中的数据也会被清空。因此只能把 Memcache 当成缓存使用,而不能把它当成真正的数据库使用。服务器
若是是单机,直接使用数据库查找数据。Memcache 对于内存的消耗很大。
若是使用 Memcache,推荐装在另一台机器上,单独做为缓存系统。而不是把数据库和 Memcache 装在一台数据库上php7
Value 存储的是数据的整个部分,不能再把 Value 中的数据进行拆分。架构
Memcached 是一个 C/S 架构的缓存系统,分为服务端的安装和客户端的安装。分布式
若是是编译安装能够指定软件的安装路径,安装过程时间长。memcached
apt-get install memcached
or
yum install memcached
/usr/bin/memcached -d -l 127.0.0.1 -p 11211 -m 150 -u root
-d
:进程守护-l
:ip地址-p
:端口号-m
:分配的内存大小-u
:启动服务的用户
查看:ps -ef | grep memcached
采用编译安装的方式
cd libmemcached-1.0.18 ./configure --prefix=/usr/lib/libmemcached meke && make install
cd memcached-2.2.0 phpize ./configure --with-php-config=/usr/local/php/bin/php-config --with-libmemcached-dir=/usr/lib/libmemcached --disable-memcached-sasl make && make install
vim /etc/php/php7.0/php-fpm/php.ini //添加 extension = memcached.so
系统类 :addServer , addServers, getStatus, getVersion
数据类:add, set, delete, flush, replace, increment, get
进阶类:setMulti, deleteMulti, get Multi, getResultCode, getResultMessage
public bool Memcached::addServer ( string $host , int $port [, int $weight = 0 ] )
host
memcached服务端主机名。若是主机名无效,相关的数据操做的返回代码将被设置为Memcached::RES_HOST_LOOKUP_FAILURE。
port
memcached服务端端口号,一般是11211。
weight
此服务器相对于服务器池中全部服务器的权重。此参数用来控制服务器在操做时被选种的几率。这个仅用于一致性 分布选项,而且这个值一般是由服务端分配的内存来设置的。
public bool Memcached::set ( string $key , mixed $value [, int $expiration ] )
key
用于存储值的键名。
value
存储的值。
expiration
到期时间,默认为 0。 更多信息请参见到期时间。
public mixed Memcached::get ( string $key [, callback $cache_cb [, float &$cas_token ]] )
key
要检索的元素的key。
cache_cb
通读缓存回掉函数或NULL.
cas_token
检索的元素的CAS标记值。
适用用 新闻详情 文章详情 这状况
网站首页 的状况,定时脚本把缓存生成好
适用于 关于咱们 的状况