memcached 和 mysql 主从环境下php开发代码详解
前端之家收集整理的这篇文章主要介绍了
memcached 和 mysql 主从环境下php开发代码详解,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
<div class="codetitle"><a style="CURSOR: pointer" data="23357" class="copybut" id="copybut23357" onclick="doCopy('code23357')"> 代码如下:
<div class="codebody" id="code23357">
<?
PHP $memcached = array( //用memcached 的 多 进程模拟 多台memcached 服务器 cn en 为 内存服务器名
'cn'=>array('192.168.254.144',11211),
'en'=>array('192.168.254.144',11212)
);
$
MysqL = array( //
MysqL 的主从 我的环境是 : xp 主 linux 从
MysqL 5
PHP5
'master'=>array('192.168.254.213','root','1','mydz'),
'slave_1'=>array('192.168.254.144','mydz') //可以灵活
添加多台从服务器
);
?>
服务器
配置文件: 十分方便的 切换主从. 当主换了 从可以迅速切换为主.
支持 多从服务器 . <div class="codetitle">
<a style="CURSOR: pointer" data="15071" class="copybut" id="copybut15071" onclick="doCopy('code15071')"> 代码如下: <div class="codebody" id="code15071">
<?
PHP class Memcached
{
private $mem;
public $pflag=''; // memcached pconnect tag
private function memConnect($serkey){
require 'config.
PHP';
$server = $memcached;
$this->mem = new Memcache;
$link = !$this->pflag ? 'connect' : 'pconnect' ;
$this->mem->$link($server[$serkey][0],$server[$serkey][1]) or $this->errordie('memcached connect error');
}
public function set($ser_key,$values,$flag='',$expire=''){
$this->memConnect($this->tag($ser_key));
if($this->mem->set($ser_key,$flag,$expire)) return true;
else return false;
}
public function get($ser_key){
$this->memConnect($this->tag($ser_key));
if($var=$this->mem->get($ser_key)) return $var;
else return false;
}
private function tag($ser
key){
$tag=explode('',$ser_key);
return $tag[0];
}
private function errordie($errmsg){
die($errmsg);
}
}
?>
简单的封装了 memcached 的操作. 详细的时间不多.我要离开公司了
在memcached 的多服务器上. 我的实现思路是这样的: 在把信息
分配.
这样可以更灵活点.