顯示廣告
隱藏 ✕
※ 本文為 terievv 轉寄自 ptt.cc 更新時間: 2016-04-30 18:00:10
看板 PHP
作者 aaa7513231 (渾沌與秩序)
標題 [請益] 大量運算執行中,進度的回傳
時間 Fri Apr 15 15:35:07 2016


大家好,我目前寫的一支PHP

執行計算並貼到Excel上去

但他的執行時間可能要到達20秒以上

這樣網頁的使用者一定會覺得很困惑不知道檔案是否有在執行還是掛了

想請問這樣大執行運算的程式大家會怎樣寫

並且做錯誤管理,因為我也常常發生其中一段計算有問題

就整個檔案不能下載

希望大家能提供意見,謝謝大家

--
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.124.29.189
※ 文章代碼(AID): #1N49cj35 (PHP)
※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1460705709.A.0C5.html
LaPass: 用命令列去執行1F 04/15 15:44
LaPass: 先讓網頁傳回結果要使用者等,然後用命令列去call php,
LaPass: 執行耗時的部份。還有php本身就不適合幹這種事情....
aaa7513231: 我比較想知道說,我希望讓網頁可以知道計算進度的話4F 04/15 16:01
aaa7513231: 除了我網頁設計時器去讀資料庫跟我PHP紀錄進度在資料
aaa7513231: 庫外,有沒有其他比較恰當的做法
springman: 大量運算的話,用 C 語言執行速度還是比較快。7F 04/15 16:27
LaPass: ajax websocket 選一個,基本上就是這樣8F 04/15 16:40
hung0724: 要及時的process bar這樣?9F 04/15 17:44
rockmanalpha: 用Ajax比較好 PHP也有辦法在執行中強制輸出內容10F 04/15 18:14
rockmanalpha: 但這種辦法無法配合介面顯示 用Ajax比較好
shadowjohn: 進度定期噴到暫存檔,ajax定期讀取12F 04/15 18:47
aaa7513231: ajax應該沒辦法回應很多段吧?有考慮13F 04/16 01:26
aaa7513231: 用stocket,對他不是很熟所以才詢問大家
aaa7513231: 的意見
aaa7513231: 然後會用php計算是因為我後台只會用php跟
aaa7513231: Python,他運算很久應該是因為大量的資料
aaa7513231: 庫抓取分析,所以優化程式碼可能沒辦法
shadowjohn: 是你不會...不是不能19F 04/16 01:34
MOONRAKER: 你"應該"不怎麼熟ajax對不對。20F 04/16 17:42
locklose: 除非你用MQTT,不然解決方法就這樣http://goo.gl/ASFgv021F 04/16 20:07
WebSocket 通訊協定簡介:比較 Polling、Long-Polling 與 Streaming 的運作原理 - G. T. Wang
[圖]
這裡介紹 HTML5 的 WebSocket 概念,並且跟傳統的即時性網頁技術 Polling、Long-Po … ...

 

--
※ 看板: terievv 文章推薦值: 0 目前人氣: 0 累積人氣: 240 
r)回覆 e)編輯 d)刪除 M)收藏 ^x)轉錄 同主題: =)首篇 [)上篇 ])下篇