第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

PHP查詢大批量MySQL疑問(wèn)?

PHP查詢大批量MySQL疑問(wèn)?

整體環(huán)境:Apache2.4.25+PHP5.6+MySQL5.5.57需求:比如用戶表中有2萬(wàn)條數(shù)據(jù),需要將這些數(shù)據(jù)先查出,然后根據(jù)用戶組表中對(duì)應(yīng)設(shè)置的比例,計(jì)算用戶應(yīng)該升級(jí)還是降級(jí),再進(jìn)行更新操作。問(wèn)題:當(dāng)用戶量小的時(shí)候,沒(méi)有任何問(wèn)題,直接瀏覽器執(zhí)行,運(yùn)行結(jié)束,所有任務(wù)完成。但是當(dāng)用戶量超過(guò)6000后,發(fā)現(xiàn)瀏覽器中會(huì)報(bào)ApacheServer錯(cuò)誤我的PHP代碼中也增加了ignore_user_abort(true);和set_time_limit(0);做法:我目前的解決方案是,將這條任務(wù)拆分成若干個(gè)小任務(wù),單個(gè)執(zhí)行,這樣雖然能解決了,但是不是長(zhǎng)久之計(jì)啊。因?yàn)橛脩袅窟€是會(huì)增加的。疑問(wèn):想問(wèn)下,大神們,你們是如何處理這種情況的?因?yàn)榇a原先不是我寫(xiě)的,只是接手后,用戶增長(zhǎng)到6000以上了,才發(fā)現(xiàn)這個(gè)問(wèn)題的。中間我想調(diào)試下,用ob_flush()flush()看看過(guò)程的,結(jié)果完全失效,怎么弄都沒(méi)反應(yīng),后來(lái)改用日志記錄查看,才發(fā)現(xiàn),每次每條任務(wù),只能執(zhí)行到大概2500左右的位置,就會(huì)自己掛掉。查看服務(wù)器資源,cpu和內(nèi)存也沒(méi)有滿,數(shù)據(jù)庫(kù)連接數(shù)也沒(méi)有滿,而且因?yàn)橹暗念l繁請(qǐng)求出錯(cuò),我現(xiàn)在數(shù)據(jù)庫(kù)已經(jīng)改成長(zhǎng)連接了。所以,嘮叨了這么多,還是想問(wèn),大神們,你們?cè)谟龅竭@種任務(wù)的時(shí)候,是如何執(zhí)行的?也是和我這邊一樣,同一個(gè)請(qǐng)求,一直等響應(yīng)嗎?還是有其他方法??
查看完整描述

2 回答

?
動(dòng)漫人物

TA貢獻(xiàn)1815條經(jīng)驗(yàn) 獲得超10個(gè)贊

ignore_user_abort(true)和set_time_limit(0);設(shè)置后還是超時(shí)報(bào)錯(cuò),那就是apache的超時(shí)時(shí)間沒(méi)有設(shè)置
這個(gè)需求是一定要手動(dòng)觸發(fā)然后實(shí)時(shí)返回的嗎?我的理解是,這是一個(gè)定時(shí)的計(jì)算任務(wù),比如每天凌晨計(jì)算一次那種這樣的情況下,寫(xiě)成一個(gè)PHP腳本,用crontab做成定時(shí)任務(wù)是一種比較好的解決方案
最后給一個(gè)用瀏覽器觸發(fā)的解決方案:在JS里面拆分任務(wù)而不是PHP,分成多個(gè)AjaxHTTP請(qǐng)求,保證每個(gè)請(qǐng)求不超過(guò)30秒,這樣多長(zhǎng)時(shí)間都可以執(zhí)行
                            
查看完整回答
反對(duì) 回復(fù) 2019-05-09
  • 2 回答
  • 0 關(guān)注
  • 271 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)