2012-10-15 163 views
0

有沒有人想出了將消息推送到多個設備的正確方法。我們正在開發一個擁有追隨者的應用程序,並且喜歡Facebook或Twitter,我需要向一個追隨者發送消息(總共600個)。Apple推送通知給多個設備

在PHP中我只是做了一個測試,每條消息大約需要20秒的答覆從

$fp = stream_socket_client('ssl://gateway.push.apple.com:2195', $err, 
$errstr, 60, STREAM_CLIENT_CONNECT, $ctx); 

// Send it to the server 
$result = fwrite($fp, $msg, strlen($msg)); 

這回來會導致它用3小時送600條消息?

對於每條消息,我正在執行相同的代碼行。我是否應該打開流,只發出多個寫入然後fpclose?

回答

0
foreach($msgs as $msg) { 
    $result = fwrite($fp, $msg, strlen($msg)); 
} 
+0

感謝tntu。發佈這個問題後我發現不久。我的問題是,這些消息是在一個PHP腳本中,實際的推送是在另一個。我需要在推送給更多5或6個人時將它們結合起來。有趣的是,相同的腳本現在在2分鐘內運行,所以那天可能只是一個蘋果推送通知服務器問題。 – justdan0227

+0

我正在將推送通知作爲一個套接字服務器運行,它接收傳入的JSON傳輸並將其寫入文件夾中的文件。在另一個線程上,我有另一個代碼來檢查該文件夾併發送它在那裏找到的內容。最後是另一個反饋線索。如果您沒有PCNTL支持,您可以將它們作爲單獨的腳本在循環中永久運行。不要忘記增加一些睡眠時間以避免CPU使用率過高。我用Python編寫了所有的代碼,並計劃在有空的時候用C語言重寫。 – transilvlad