2013-01-08 69 views
-2

我一直在測試Meteor傳輸文件,但應用運行緩慢,Meteor.apply在發送之前是否緩存了一個隊列中的呼叫?流星申請文件傳輸?

對於那些可能更明確的問題: 「是Meteor.apply異步還是使用que緩衝區同步?」

+2

而你的問題是??? – NoNaMe

+0

我沒有一個可以讀取你的代碼的水晶球。 –

+1

對不起!我現在看到了太多詞語:「Meteor.apply是異步還是使用que緩衝區進行同步?」代碼可以在流星github – RaiX

回答

0

您需要取消阻止該方法。

默認情況下,服務器一次只運行一個給定客戶端的方法調用(Meteor.applyMeteor.call)。 (方法要求不同的客戶端總是同時運行。)

要允許來自同一客戶端的同步方法調用,您需要取消阻止第一個方法調用。在服務器方法實現中調用this.unblock()允許服務器開始在新光纖中處理該客戶端的下一個方法。

http://docs.meteor.com/#method_unblock

+0

嘗試它並設置等待true/false,在本地stil需要約88ms代碼:https://gist.github.com/4486978 – RaiX

+0

從應用調用回調需要約88ms,服務器功能約爲1-2ms。我試着產生多個工作者,認爲這可能是滯後的,但仍然存在瓶頸 - 在meteor.com 20個線程導致等待3000-5000毫秒公關。應用呼叫 - 傳輸大約是8kbit/s本地 - 它耗盡我的mac上的cpu和mem - 我做錯了什麼? – RaiX

+0

我正在更新數據庫,在服務器上應用 - 它正在更新ui,因爲它應該,但它的數據量很小。 – RaiX