memcache

1.  memcache是什么

memcache是一个高性能的分布式的内存对象缓存系统,用于动态Web应用以减轻数据库负担。它通过在内存中缓存数据和对象,来减少读取数据库的次数。从而提高动态、数据库驱动网站速度。

  memcache通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。memcache主要用于分担数据库负的压力,memcache将数据调用到内存中,然后从内存中读取,从而大大提高读取速度。

memcache是这个项目的名称,而memcached是它服务器端的主程序文件名。

2.操作流程: 

1、检查客户端的请求数据是否在memcached中,如有,直接把请求数据返回,不再对数据库进行任何操作,路径操作为①②③⑦。
2、如果请求的数据不在memcached中,就去查数据库,把从数据库中获取的数据返回给客户端,同时把数据缓存一份到memcached中(memcached客户端不负责,需要程序明确实现),路径操作为①②④⑤⑦⑥。
3、每次更新数据库的同时更新memcached中的数据,保证一致性。
4、当分配给memcached内存空间用完之后,会使用LRU(Least Recently Used,最近最少使用)策略加上到期失效策略,失效数据首先被替换,然后再替换掉最近未使用的数据。

 3. memcache使用场景:

(1) 访问频繁的字典数据

(2) 大量的hot数据

(3) 页面缓存

(4) 频繁的查询条件和结果

(5) 临时处理的数据


 server1中:

cd ~
vim .bash_profile 
   第10行:PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/lnmp/php/bin
source .bash_profile

 真机中:
scp /home/westos/Desktop/memcache-4.0.5.2.tgz root@172.25.70.1:/root
ab -c 10 -n 1000 http://172.25.70.1/index.php

server1中: 

ls
tar zxf memcache-4.0.5.2.tgz
cd memcache-4.0.5.2/
ls
phpize
yum install -y autoconf.noarch
phpize
ls
./configure --enable-memcache
make
make install

cd /usr/local/lnmp/php/lib/php/extensions/no-debug-non-zts-20190902/
cd /usr/local/lnmp/php/etc
ls
vim
  第895行取消注释改为:
systemctl reload php-fpm
php -m | grep memcache
cd ~
cd memcache-4.0.5.2/
ls
cp example.php memcache.php /usr/local/nginx/html/

cd /usr/local/nginx/html/myadmin/
cd ..
ls
yum install -y memcached
systemctl start memcached
netstat -antlp | grep :11211
cat /etc/sysconfig/memcached 
   PORT="11211"
   USER="memcached"
   MAXCONN="1024"
   CACHESIZE="64"
   OPTIONS=""

 火狐中检测:http://172.25.70.1/example.php

 server1中:

ls
vim memcache.php
    第23行改为:define('ADMIN_PASSWORD','westos');      // Admin Password
    第28行改为:$MEMCACHE_SERVERS[] = 'localhost:11211'; // add more as an array
    注释掉第29行

 火狐中:http://172.25.70.1/memcache.php
  用户:memcache  密码:westos

 

 真机中: ab -c 10 -n 1000 http://172.25.70.1/example.php

 

  • 6
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值