久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

PHP+MYSQL實現(xiàn)讀寫分離簡單實戰(zhàn)

本篇文章主要介紹了PHP+MYSQL實現(xiàn)讀寫分離,實例分析了讀寫分離的技巧,從而提高數(shù)據(jù)庫的負(fù)載能力,具有一定的參考價值,有興趣的可以了解一下。

1、Introduction

之前寫過2篇文章,分別是:

Mysql主從同步的原理 

Myql主從同步實戰(zhàn) 

基于此,我們再實現(xiàn)簡單的PHP+Mysql讀寫分離,從而提高數(shù)據(jù)庫的負(fù)載能力。

2、代碼實戰(zhàn)

<?php
class Db
{
  private $res;
  function __construct($sql)
  {
    $querystr = strtolower(trim(substr($sql,0,6)));
    //如果是select,就連接slave服務(wù)器
    if($querystr == 'select')
    {
      $res=$this->slave_select($sql);
      $this->res=$res;
    }
    //如果不是select,就連接master服務(wù)器
    else
    {
      $res=$this->master_change($sql);
      $this->res=$res;
    }
  }

  /**
   * slave從庫返回sql查詢結(jié)果
   * @param $sql
   * @return array
   */
  private function slave_select($sql){
    //該處只是隨機獲取slave節(jié)點的ip,當(dāng)然,還可以采用其他算法獲取slave_ip
    $slave_server=$this->get_slave_ip();
    $dsn="mysql:host=$slave_server;dbname=test";
    $user='root';
    $pass='123456';
    $dbh=new PDO($dsn, $user, $pass);
    return $dbh->query($sql)->fetchAll(PDO::FETCH_ASSOC);
  }

  /**master主庫返回sql執(zhí)行結(jié)果
   * @param $sql
   * @return int
   */
  private function master_change($sql){
    $master_server='192.168.33.22';
    $dsn="mysql:host=$master_server;dbname=test";
    $user='root';
    $pass='123456';
    $dbh=new PDO($dsn, $user, $pass);
    return $dbh->exec($sql);
  }

  /**
   * 隨機獲取slave-ip
   * @return mixed
   */
  private function get_slave_ip(){
    $slave_ips=['192.168.33.33','192.168.33.44'];
    $count=count($slave_ips)-1;
    $random_key=mt_rand(0,$count);
    return $slave_ips[$random_key];
  }

  /**       
   * 獲取結(jié)果
   * @return int
   */
  public function get_res(){
    return $this->res;
  }
}

$sql1 = "select * from t1";
$sql2 = "insert into t1 (name) values ('haha')";
$sql3 = "delete from t1 where id=1";
$sql4 = "update t1 set name='Jerry' where id=2";

$db = new Db($sql1);
//$db = new Db($sql2);
//$db = new Db($sql3);
//$db = new Db($sql4);

var_dump($db->get_res());

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持。

【網(wǎng)站聲明】本站除付費源碼經(jīng)過測試外,其他素材未做測試,不保證完整性,網(wǎng)站上部分源碼僅限學(xué)習(xí)交流,請勿用于商業(yè)用途。如損害你的權(quán)益請聯(lián)系客服QQ:2655101040 給予處理,謝謝支持。

相關(guān)文檔推薦

這篇文章主要介紹了PHP有序表查找之插值查找算法,簡單分析了插值查找算法的概念、原理并結(jié)合實例形式分析了php實現(xiàn)針對有序表插值查找的相關(guān)操作技巧,需要的朋友可以參考下
下面小編就為大家分享一篇ThinkPHP整合datatables實現(xiàn)服務(wù)端分頁的示例代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
下面小編就為大家分享一篇PHP實現(xiàn)APP微信支付的實例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
這篇文章主要介紹了PHP實現(xiàn)的多維數(shù)組排序算法,結(jié)合實例形式對比分析了php針對多維數(shù)組及帶有鍵名的多維數(shù)組進行排序相關(guān)操作技巧與注意事項,需要的朋友可以參考下
這篇文章主要為大家詳細(xì)介紹了php結(jié)合ajaxuploadfile實現(xiàn)無刷新文件上傳功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
本篇文章給大家詳細(xì)介紹了PHP開發(fā)接口使用RSA進行加密解密方法,對此有興趣的朋友可以學(xué)習(xí)下。
主站蜘蛛池模板: 欧美日韩国产精品一区 | 国产精品久久久久久婷婷天堂 | 久久久久99 | 欧美一区二区在线免费观看 | 欧美电影免费观看高清 | 久久久久黄色 | 国产一区二区三区久久久久久久久 | 91亚洲国产成人久久精品网站 | 午夜精品视频在线观看 | 国产色99精品9i | 久久aⅴ乱码一区二区三区 亚洲国产成人精品久久久国产成人一区 | 久久成人免费 | 日韩一区二区在线视频 | 国产成人免费在线观看 | 中文字幕亚洲欧美 | 欧美精品tv| 中文字幕视频在线 | 欧美国产日韩在线 | 国产乱性 | 98久久 | 一级毛片免费 | 99只有精品 | 国产福利视频网站 | 日韩一区二区av | 欧美日韩在线免费 | 精品国产99| 天天插天天操 | 精品一区二区三区四区 | 日韩视频在线播放 | 天天综合永久 | 2022精品国偷自产免费观看 | 日韩高清中文字幕 | 青青草原综合久久大伊人精品 | 国产精品美女久久久免费 | 中文字幕男人的天堂 | 91精品国产91久久久久游泳池 | 手机看片在线播放 | av男人天堂影院 | 国产精品免费大片 | 皇色视频在线 | 最新超碰 |