Ubuntu16.04下nginx+mysql+php+redis
阿新 • • 發佈:2017-07-11
images fastcgi light -c 連接 dev 是否 memcache word
一、redis簡介
Redis是一個key-value存儲系統。和Memcached類似,為了保證效率,數據都是緩存在內存中。區別的是redis會周期性的把更新的數據寫入磁盤或者把修改操作寫入追加的記錄文件,並且在此基礎上實現了master-slave(主從)同步。在部分場合可以對關系數據庫起到很好的補充作用。它提供了Java,C/C++(hiredis),C#,PHP,JavaScript,Perl,Object-C,Python,Ruby等客戶端,使用很方便。
二、架構圖
大致結構就是讀寫分離,將mysql中的數據通過觸發器同步到redis中
三、安裝LNMP環境
1.apt-get安裝
apt-get install nginx mysql-server php
2.配置nginx,支持php
vi /etc/nginx/sites-available/default ...... # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # location ~ \.php$ { incloude snippets/fastcgi-php.conf; # # # With php7.0-cgi alone; # fastcgi_pass 127.0.0.1:9000; # # With php7.0-fpm; fastcgi_pass unix:/run/php/php7.0-fpm.sock; } ......
3.重啟nginx,測試
vi /var/www/html/info.php <?php phpinfo();?>
然後訪問頁面看到php的相關信息,基礎環境就算搭建完成了。
四、安裝redis
1.安裝redis和php的redis擴展
apt-get install redis-server apt-get install git php-dev git clone -b php7 https://github.com/phpredis/phpredis.git cd phpredis/ phpize ./configure make make install
2.配置php的redis擴展
vi /etc/php/7.0/fpm/conf.d/redis.ini extension=redis.so
3.重啟fpm,訪問info.php,就能看到 擴展
/etc/init.d/php7.0-fpm restart
五、讀取測試
<?php //連接本地Redis服務 $redis=new Redis(); $redis->connect(‘localhost‘,‘6379‘) or die ("Could net connect redis server!"); //$redis->auth(‘admin123‘); //登錄驗證密碼,返回【true | false】 $redis->ping(); //檢查是否還再鏈接,[+pong] $redis->select(0);//選擇redis庫,0~15 共16個庫 //設置數據 $redis->set(‘school‘,‘WuRuan‘); //設置多個數據 $redis->mset(array(‘name‘=>‘jack‘,‘age‘=>24,‘height‘=>‘1.78‘)); //存儲數據到列表中 $redis->lpush("tutorial-list", "Redis"); $redis->lpush("tutorial-list", "Mongodb"); $redis->lpush("tutorial-list", "Mysql"); //獲取存儲數據並輸出 echo $redis->get(‘school‘);
echo ‘<br/>‘;
$gets=$redis->mget(array(‘name‘,‘age‘,‘height‘));
print_r($gets);
echo ‘<br/>‘; $tl=$redis->lrange("tutorial-list", 0 ,5); print_r($tl);
echo ‘<br/>‘; //釋放資源 $redis->close(); ?>
Ubuntu16.04下nginx+mysql+php+redis