新聞中心
php連接mysql使用一段時(shí)間后連接數(shù)據(jù)庫(kù)超時(shí)
開(kāi)啟下mysql的慢查詢. 看看是否存在過(guò)多的慢查詢語(yǔ)句. 具體開(kāi)啟方式可以百度
在成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作過(guò)程中,需要針對(duì)客戶的行業(yè)特點(diǎn)、產(chǎn)品特性、目標(biāo)受眾和市場(chǎng)情況進(jìn)行定位分析,以確定網(wǎng)站的風(fēng)格、色彩、版式、交互等方面的設(shè)計(jì)方向。創(chuàng)新互聯(lián)建站還需要根據(jù)客戶的需求進(jìn)行功能模塊的開(kāi)發(fā)和設(shè)計(jì),包括內(nèi)容管理、前臺(tái)展示、用戶權(quán)限管理、數(shù)據(jù)統(tǒng)計(jì)和安全保護(hù)等功能。
在數(shù)據(jù)庫(kù)訪問(wèn)比較慢的情況下. 執(zhí)行 show processlist 看下進(jìn)程是否過(guò)多.
找出慢查詢之后, 可以針對(duì)sql進(jìn)行優(yōu)化.
加加索引應(yīng)該就能解決.
my.cnf 的配置可以參考網(wǎng)上的方案進(jìn)行優(yōu)化....
(按說(shuō)...4000條數(shù)據(jù)根本就不是個(gè)問(wèn)題....)
thinkPHP數(shù)據(jù)庫(kù)全局配置都弄好了,但連接mysql的M('User')操作老是顯示超時(shí),求問(wèn)
字面意思是數(shù)據(jù)庫(kù)連接超時(shí)(30s),假如你的代買沒(méi)有問(wèn)題而是你的文件過(guò)大的話,那么可以在php.ini中調(diào)大這個(gè)連接時(shí)間上限。但是我覺(jué)得可能是你的數(shù)據(jù)庫(kù)配置的問(wèn)題,方便貼出config.php中數(shù)據(jù)庫(kù)連接的配置代碼么?
php處理大量數(shù)據(jù)時(shí),運(yùn)行到一定時(shí)間就中斷了,請(qǐng)問(wèn)如何解決
php處理數(shù)據(jù)時(shí)會(huì)有一個(gè)等待時(shí)間,就是所說(shuō)的超時(shí)時(shí)間,而且如果使用mysql的話,它也有一個(gè)超時(shí)時(shí)間,運(yùn)行一串代碼時(shí)間如果超過(guò)配置文件的時(shí)間,會(huì)被中斷不運(yùn)行。第一種你可以修改php配置文件timeout的運(yùn)行時(shí)間,第二你可以分批處理大量數(shù)據(jù),注意是分批處理,就OK了。
PHP file_get_contents 函數(shù)超時(shí)的幾種解決方法
這里就簡(jiǎn)單介紹兩種:
一、增加超時(shí)的時(shí)間限制
這里需要注意:set_time_limit只是設(shè)置你的PHP程序的超時(shí)時(shí)間,而不是file_get_contents函數(shù)讀取URL的超時(shí)時(shí)間。
我一開(kāi)始以為set_time_limit也能影響到file_get_contents,后來(lái)經(jīng)測(cè)試,是無(wú)效的。真正的修改file_get_contents延時(shí)可以用resource
$context的timeout參數(shù):
復(fù)制代碼
代碼如下:
$opts
=
array(
‘http'=array(
‘method'=”GET”,
‘timeout'=60,
)
);
$context
=
stream_context_create($opts);
$html
=file_get_contents('',
false,
$context);
fpassthru($fp);
二、一次有延時(shí)的話那就多試幾次
有時(shí)候失敗是因?yàn)榫W(wǎng)絡(luò)等因素造成,沒(méi)有解決辦法,但是可以修改程序,失敗時(shí)重試幾次,仍然失敗就放棄,因?yàn)閒ile_get_contents()如果失敗將返回
FALSE,所以可以下面這樣編寫(xiě)代碼:
復(fù)制代碼
代碼如下:
$cnt=0;
while($cnt
3
($str=@file_get_contents('http…'))===FALSE)
$cnt++;
幾種常見(jiàn)的PHP超時(shí)處理方法
一、在php.ini里面設(shè)置 max_execution_time = 1800;
二、通過(guò)PHP的ini_set 函數(shù)設(shè)置 ini_set("max_execution_time", "1800");
三、通過(guò)set_time_limit 函數(shù)設(shè)置 set_time_limit(1800) ;
PHP中幾種常見(jiàn)的超時(shí)處理全面總結(jié)
具體代碼如下:
?php
$ch = curl_init();
$timeout = 5;
curl_setopt ($ch, CURLOPT_URL, '');
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$file_contents = curl_exec($ch);
curl_close($ch);
echo $file_contents;
?
PHP 獨(dú)特的語(yǔ)法混合了C、Java、Perl以及PHP自創(chuàng)的語(yǔ)法。
它可以比CGI或者Perl更快速地執(zhí)行動(dòng)態(tài)網(wǎng)頁(yè)。用PHP做出的動(dòng)態(tài)頁(yè)面與其他的編程語(yǔ)言相比,PHP是將程序嵌入到HTML(標(biāo)準(zhǔn)通用標(biāo)記語(yǔ)言下的一個(gè)應(yīng)用)文檔中去執(zhí)行,
執(zhí)行效率比完全生成HTML標(biāo)記的CGI要高許多;
PHP還可以執(zhí)行編譯后代碼,編譯可以達(dá)到加密和優(yōu)化代碼運(yùn)行,使代碼運(yùn)行更快。
分享標(biāo)題:php數(shù)據(jù)接收超時(shí) php處理大量數(shù)據(jù)+超時(shí)
標(biāo)題路徑:http://www.dlmjj.cn/article/docjhsj.html