国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

異步請(qǐng)求 - php有辦法做類(lèi)似于js的異步post嗎?fsockopen沒(méi)有辦法獲取請(qǐng)求結(jié)果
過(guò)去多啦不再A夢(mèng)
過(guò)去多啦不再A夢(mèng) 2017-05-27 17:42:08
0
5
863

在做批量發(fā)郵件的操作,要獲取發(fā)送結(jié)果,所以需要等待請(qǐng)求結(jié)果。

php有沒(méi)有辦法異步請(qǐng)求接口,然后獲取數(shù)據(jù),再執(zhí)行回調(diào)函數(shù)?

現(xiàn)在是同步請(qǐng)求接口,然后等待,很慢。。而且執(zhí)行的時(shí)候服務(wù)器cpu會(huì)升高。。

求大神賜教

現(xiàn)在的重點(diǎn)是不想等待請(qǐng)求的返回,因?yàn)楹苈?,等有返回的時(shí)候直接調(diào)用某段代碼。。redis隊(duì)列什么的已經(jīng)在用了,也是腳本在執(zhí)行

過(guò)去多啦不再A夢(mèng)
過(guò)去多啦不再A夢(mèng)

全部回復(fù)(5)
小葫蘆

php安裝多線程擴(kuò)展。自己擴(kuò)展即可達(dá)到,js也是單線程實(shí)現(xiàn)的。

伊謝爾倫

可以嘗試使用reactphp,workerman,swoole這些庫(kù)來(lái)執(zhí)行異步任務(wù)

劉奇

php自帶的curl_multi就可以實(shí)現(xiàn)了

左手右手慢動(dòng)作

強(qiáng)烈推薦你使用workerman,如果使用了fsockopen,這個(gè)只是講異步發(fā)出去了,但是并沒(méi)有返回回來(lái)!如果你要異步處理,就用workerman.當(dāng)然swoole也可以的,但是呢,這個(gè)有C語(yǔ)言的,一些報(bào)錯(cuò)信息是C的。你會(huì)C你也可以用這個(gè)。workerman入門(mén)特簡(jiǎn)單。具體的實(shí)現(xiàn)邏輯如下:
當(dāng)你需要異步的時(shí)候,你直接調(diào)用workerman,來(lái)執(zhí)行你的邏輯,這個(gè)workerman這里是同步執(zhí)行的,
workerman執(zhí)行邏輯過(guò)后,通過(guò)異步的方式來(lái)調(diào)用task任務(wù),這個(gè)是workerman的異步。workerman直接返回。
當(dāng)你的task任務(wù)搞定了過(guò)后,就講傳遞到workerman中,在由workerman來(lái)執(zhí)行你異步之后的邏輯。
給你一個(gè)備份里面有PHP異步通信的框架
github-php-awesome 翻譯過(guò)后的

僅有的幸福

隊(duì)列

1.把需要發(fā)送的信息存到Redis或者其他內(nèi)存緩存里面。

2.php提供一個(gè)需要訪問(wèn)密鑰token的接口,這個(gè)接口便是循環(huán)的讀取緩存redis里面得郵件數(shù)據(jù),去發(fā)送。

3.使用定時(shí)任務(wù)windows和linux均有方案,定時(shí)去http請(qǐng)求這個(gè)php接口,完成發(fā)送。也相當(dāng)于就是異步了。

最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板