Heim >php教程 >php手册 >CakePHP: tips on ssl, mysql load balance, mas

CakePHP: tips on ssl, mysql load balance, mas

WBOY
WBOYOriginal
2016-06-13 10:42:131175Durchsuche

1. CakePHP Master/Slave
  *) add default(slave as for query) setting in database.php, and master for saving
  *) define a new replicate behavior
 

    class ReplicationBehavior extends ModelBehavior {
   
         public function beforeSave($Model) {
          $Model->useDbConfig = master;
         }
       
         public function afterSave($Model) {
          $Model->useDbConfig = default;
         }
       
         public function setServer($Model, $server) {
          $Model->__backupConfig = $Model->useDbConfig;
          $Model->useDbConfig = $server;
         }
       
         public function afterFind($Model) {
          if (!empty($Model->__backupConfig)) {
           $this->useDbConfig = $Model->__backupConfig;
          }
          $Model->__backupConfig = null;
         }
        
         public function save($data = null, $validate = true, $whitelist = array()) {
              $this->Replication->beforeSave($this);
              return parent::save($data, $validate, $whitelist);
         }
   
    }
   
    ?>
    *) set $actAs to have replicate behavior in your base app model
        $actAs = array(Replicate);
   
    *) call the setServer method in your controller to determine which database you want to use for instant query after save
                if ($this->Deal->saveAll($this->data, array(validate=>first))) {
          $this->Deal->setServer(master);
                    $deal = $this->Deal->find(first,array(
                        conditions => array(slug => $this->data[Deal][slug]),
                        fields => array(id)
                    ));
                   
2. how to use xhprof (a php benchmark tool developed by facebook)
http://techportal.ibuildings.com/2009/12/01/profiling-with-xhprof/

3. MySQL load-balancing
mysql-load-balancing-proxy-trafficscript">http://www.zeus.com/community/articles/building-mysql-load-balancing-proxy-trafficscript

4. ssl
consolidate secure operations to single domain: https://lang.secure.jigocity.com
keep track of referer links in http header
redirect back to the original referer when done

 

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