日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > php >内容正文

php

PHP 缓存 内存,PHP memcache 内存缓存 数据库查询 应用 高洛峰 细说PHP

發(fā)布時間:2023/12/10 php 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 PHP 缓存 内存,PHP memcache 内存缓存 数据库查询 应用 高洛峰 细说PHP 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

PHP memcache在數(shù)據(jù)庫查詢中應(yīng)用,減少連接數(shù)據(jù)庫的次數(shù),降低服務(wù)器的壓力!/*

*?memcache應(yīng)用說明?memory?cache?內(nèi)存緩存

*?工作原理

*??服務(wù)器端口port?11211

*?MemCached?存取鍵值對key?=>?value

*?1.內(nèi)網(wǎng)訪問

*?2.設(shè)置防火墻

*/

//創(chuàng)建memcache對象

$mem??=??new??Memcache();

//連接memcache服務(wù)器

$host?=?'localhost';

$port?=?'11211';

$mem->connect($host,$port);

//$mem->addserver($host,$port);

//$mem->addserver('192.168.10.254',?11211);?//新增一臺服務(wù)器的內(nèi)存

$dsn???????????=?????'mysql:dbname=test;host=localhost';

$username?=????'root';

$passwd?????=????'root';

$options?????=????array(

PDO::ATTR_AUTOCOMMIT=>true,

PDO::ATTR_PERSISTENT=>true

);

//連接數(shù)據(jù)庫

try{

//創(chuàng)建對象

$pdo?=??new?PDO($dsn,?$username,?$passwd,?$options);

//設(shè)置錯誤使用異常模式

$pdo->setAttribute(PDO::ATTR_ERRMODE,?PDO::ERRMODE_EXCEPTION);

}catch(PDOException?$e){

echo?"數(shù)據(jù)庫連接失敗:".$e->getMessage();

exit;

}

$statement?=?"select?*?from?users?where?id?>???and?id?

//鍵名用md5()加密后?名字更規(guī)范?防止查詢語句信息泄漏

$key?=?md5($statement);

//直接從內(nèi)存要數(shù)據(jù)

$data?=?$mem->get($key);

//判斷是否存在$data,如果沒有才需要連接數(shù)據(jù)庫獲取數(shù)據(jù)!數(shù)據(jù)直接從內(nèi)存獲取,實現(xiàn)緩存。

if(empty($data)){

try{

//給數(shù)據(jù)庫管理系統(tǒng),編譯后等待?沒有執(zhí)行

$pdostatement=$pdo->prepare($statement);

$pdostatement->execute(array(3,6));

//設(shè)置結(jié)果的模式

$pdostatement->setFetchMode(PDO::FETCH_NUM);

$data?=?$pdostatement->fetchAll(PDO::FETCH_ASSOC);

//保存在緩存中

$mem->set($key,?$data,MEMCACHE_COMPRESSED,10);

echo?'第一次數(shù)據(jù)庫查詢!
';

}catch?(PDOException?$e){

echo?'錯誤的原因:'.$e->getMessage();

}

}

//按表格形式輸出

echo?'

foreach?($data?as?$value){

echo?'

';

echo?'

'.$value['id'].'';

echo?'

'.$value['username'].'';

echo?'

'.$value['password'].'';

echo?'

'.$value['email'].'';

echo?'

';

}

echo?'

';

//關(guān)閉連接

$mem->close();

總結(jié)

以上是生活随笔為你收集整理的PHP 缓存 内存,PHP memcache 内存缓存 数据库查询 应用 高洛峰 细说PHP的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。