Memcached原理与部署

  

Memcached概述

  
 <代码>一套开源的高性能分布式内存对象缓存系统
  所有的数据都存储在内存中
  支持任意存储类型的数据
  提高网站的访问速度 
  

Memcached常用架构

  

 Memcached原理与部署

  

Memcached路由算法

  
 <代码>●求余数哈希算法
  先用关键做散列运算得到一个整数,再去做哈希算法,根据余数进行路
  由,这种算法适合大多数据需求,但是不适合用在动态变化的环境中
  ●一致性哈希算法
  按照哈希算法把对应的关键通过一定的哈希算法处理后映射形成一一个首
  尾相接闭合循环,然后通过使用与对象存储一样的哈希算法将机器也映
  射到环中,顺时针方向计算将所有对象存储到里自己最近的机器中
  适合在动态变化的环境中使用 
  

环境部署

           服务器角色   IP地址   需要安装的软件包               Memcached服务器   192.168.142.139   memcached-1.5.6.tar.gz, libevent-2.1.8-stable.tar.gz         Memcache客户端   192.168.142.130   memcache-2.2.7。tgz灯(httpd, mysql, php)            

第一步:配置Memcached服务器

  

<强> 1。安装编译环境

  
 <代码类=" language-bash "> [root@server ~] # yum安装gcc gcc-c + +使- y  
  

<强> 2。远程挂载获取资源包

  
 <代码类=" language-bash "> root@server ~ #山。cifs//192.168.142.1/memcached/mnt  
  

<强> 3。解压资源包

  
 <代码类=" language-bash "> (root@server memcached) #焦油zxvf libevent-2.1.8-stable.tar。广州- c/opt
  (root@server memcached) #焦油zxvf memcached-1.5.6.tar。广州- c/opt
  (root@server memcached) #焦油zxvf magent-0.5.tar。gz - c/opt/<代码> 
  

<>强4。配置并编译安装libevent

  
 <代码类=" language-bash "> (root@server memcached) # cd/opt/libevent-2.1.8-stable
  [root@server libevent-2.1.8-stable] # ./configure——prefix=/usr/地方/libevent
  [root@server libevent-2.1.8-stable] #做,,使安装 
  

<强> 5。编译安装memcached

  
 <代码类=" language-bash "> [root@server libevent-2.1.8-stable] # cd/opt/memcached-1.5.6/[root@server memcached-1.5.6] # ./configure——prefix=/usr/地方/memcached——with-libevent=/usr/地方/libevent/[root@server memcached-1.5.6] #做,,使安装 
  

<强> 6。建立服务命令的软链接到系统,便于操作

  
 <代码类=" language-bash "> [root@server memcached-1.5.6] # ln - s/usr/local/memcached/bin/*/usr/local/bin  
  

<强> 7。启动服务,- d守护进程;- m缓存大小32 m; - p端口11211;- u用户

  
 <代码类=" language-bash "> [root@server memcached-1.5.6] # memcached 32 m - p - d - m 11211 - u根 
  

<强> 8。查看服务端口状态

  
 <代码类=" language-bash "> [root@server memcached-1.5.6] # netstat -ntap | grep memcached
  tcp 0 0 0.0.0.0:11211 0.0.0.0: * 129587/memcached听
  tcp6 0 0::: 11211::: * 129587/memcached听 
  

<强> 9。安装与使用telnet连接memcached

  
 <代码类=" language-bash "> [root@server memcached-1.5.6] # yum安装使用telnet - y
  
  #连接使用telnet
  [root@server memcached-1.5.6] # telnet 127.0.0.1 11211
  
  #添加键名,不设置序列号,不设置过期时间,即将输入的字节长度
  添加用户名0 0 0
  
  #查看键值
  获得用户名
  
  #最后一个数字是跟新因子
  值0 7 1用户名
  
  #更新,若键名不存在,则报的错
  更换用户名0 0 9
  
  #更新,对不存在的进行添加
  设置用户名0 0 10
  
  #检查更新,更新因子相等则更新否则返回存在
  中科院用户名0 0 7 4
  
  #键后追加数据最后数字是追加的字节数
  apppend用户名0 0 4
  
  #键值前追加数据
  预先考虑用户名0 0 2
  
  #删除键
  删除用户名
  
  #清除所有缓存数据
  flush_all
  
  #显示状态信息
  统计数据
  
  #返回所有键值对的统计信息
  统计项目
  
  #返回指定存储空间的键值对
  统计cachedump 1 0
  
  #显示各个板的信息
  统计数据板
  
  #输出所有项目的大小和个数
  数据的大小
  
  #退出
  退出

Memcached原理与部署