Heim  >  Artikel  >  Backend-Entwicklung  >  ThinkPHP(百万级)数据分表技术的例子

ThinkPHP(百万级)数据分表技术的例子

WBOY
WBOYOriginal
2016-07-25 08:59:461684Durchsuche
为大家说说ThinkPHP内置的分表算法处理百万级数据的例子,有需要的朋友,可以看看。

从thinkphp中抽取出来的代码,看看人家是如何实现大数据分表的。

数据表: house_member_0 house_member_1 house_member_2 house_member_3

model:

class MemberModel extends AdvModel {
protected $partition = array('field'=>'username','type'=>'id','num'=>'4');
    public function getDao($data=array()) {
        $data = empty($data) ? $_POST : $data;
        $table = $this->getPartitionTableName($data);
        return $this->table($table);
    }
}

action:

class MemberAction extends BaseAction {
    public function login() {
        if($this->isPost()) {
            $this->validToken();
            $dao = D('Member')->getDao();
            $res = $dao->where('username = '.$_POST['username'])->find();
            // output 为自定义方法
            // $isAjax - bool
            $this->output(false);
        }
        $this->display();
    }
}


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn