講一個開發遇到的問題。
開發中遇到一個需求,需要在后台表單頁面支持上傳視頻。因為項目中一直用的是騰訊雲的COS做第三方存儲平台,所以視頻也要上傳到cos中保存。
首先想到的是使用騰訊提供的php的SDK來做,扎到文檔里一頓死磕后完成了上傳視頻到cos的功能,但在測試中就遇到了問題,本地開發測試用的都是幾兆的小視頻,上傳沒問題。但在線上上傳超過10M的視頻時耗時就會很長,而且受限於服務器與帶寬的限制速度也上不去,結果是超時失敗。
百度后調整了php的腳本最大執行時間和服務器緩存上限,但是還是達不到想要的效果。一番痛苦的掙扎后終於解決了它。解決的辦法是使用js的sdk直接在本地以文件流的方式發起上傳。因為不再經過php的上傳機制所以無需擔心文件大小超限制。而且在相同的服務器環境下上傳速度顯著提升。同時sdk的上傳接口還會將上傳信息及時回調。只需要做一個簡單的計算和封裝即可實時顯示上傳進度和速率。這里記錄下來,希望對同樣遇到此問題的同學有所幫助。
author:zmq