那就用sphinx 技術(shù),目前這個是最好的,沒有之一。
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:申請域名、雅安服務(wù)器托管、營銷軟件、網(wǎng)站建設(shè)、撫遠(yuǎn)網(wǎng)站維護(hù)、網(wǎng)站推廣。
下面是我百度百科弄過來的,怎么使用還得你自己看白皮書了。
Sphinx的主要特性包括:
高速索引 (在新款CPU上,近10 MB/秒);
高速搜索 (2-4G的文本量中平均查詢速度不到0.1秒);
高可用性 (單CPU上最大可支持100 GB的文本,100M文檔);
提供良好的相關(guān)性排名
支持分布式搜索;
提供文檔摘要生成;
提供從MySQL內(nèi)部的插件式存儲引擎上搜索
支持布爾,短語, 和近義詞查詢;
支持每個文檔多個全文檢索域(默認(rèn)最大32個);
支持每個文檔多屬性;
支持?jǐn)嘣~;
支持單字節(jié)編碼與UTF-8編碼。[1]
大數(shù)據(jù)的話可以進(jìn)行以下操作:
減少對數(shù)據(jù)庫的讀取,也就是減少調(diào)用數(shù)據(jù)庫,
進(jìn)行數(shù)據(jù)緩存,
利用數(shù)據(jù)庫的自身優(yōu)化技術(shù),如索引等
精確查詢條件,有利于提高查找速度
辦法就是一次性全查詢出來,然后用PHP程序來處理,優(yōu)點是減少數(shù)據(jù)庫連接查詢次數(shù),提高效率,缺點就是,有可能會多寫一部分php代碼??偟膩碚fphp的處理速度要比循環(huán)查詢要效率高。
我只針對你這個做優(yōu)化吧。。
第一個不要用select * 這樣的sql語句,你需要什么字段就寫哪些字段
都需要的話,你都寫出來,select * 效率很低的。。
第二個如果說你的后臺中對這些數(shù)據(jù)的變動不是很頻繁
然后你可以將查詢結(jié)果存入memcahe中
我寫一段偽代碼
$mem_key="all";
$res = $memcache-get($mem_key);
//如果沒有存入memcache中
if (empty($res){
//sql語句可以用left jion on關(guān)聯(lián)查詢
$aaa="select b.字段1,b.字段2...from btb as b left jion tb as b.id=t.id";
$bb=$mysql-_query($aaa);
while(!!$_rows=$mysql-_fetch_array_list($bb)){
//do something
$res ....
}
//結(jié)果存入memecahed中
$memcache-set($mem_key,$res,0,超時時間);
}
$res就是你獲取的結(jié)果。。
你這段代碼基本可以這樣。。
網(wǎng)頁標(biāo)題:php數(shù)據(jù)庫優(yōu)化方案 php配置優(yōu)化
網(wǎng)站URL:http://muchs.cn/article32/hgsspc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、企業(yè)網(wǎng)站制作、全網(wǎng)營銷推廣、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站建設(shè)、用戶體驗
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)