2011-11-26 63 views
4

我正在玩EM來實現流和併發。我有一個問題,流... 我運行使用Http streaming with thin&eventmachine

$ rackup -s thin -p 3000 async_app.ru 

雖然與$ ab -c 10 -n 20 http://localhost:3000/測試下面的架子應用https://gist.github.com/1394840,應用程序似乎接受中並行請求。大!

我期望它在實現流媒體的同時。當我在Firefox8中測試它時,它工作得很好。並且使用,結果也與預期一樣流傳!

但後來在IE & Chrome的測試時,流失敗,也就是三線只開的請求後,出現了一起5秒...

我懷疑,如果我錯過了什麼被要求瀏覽器嗎?我注意到響應頭文件中沒有Transfer-Encoding:chunked,所以它有什麼關係?如果是這樣,是Thin的問題嗎?我如何使用精簡或Chrome瀏覽器實現流式傳輸?

謝謝!

回答

0

顯然,瀏覽器只有在得到一定數量的響應之後纔會開始渲染頁面,因爲它指出了in this article。所以,我已經試過以下:

body.call ["Hey!\n".ljust(1024)] 

我的Safari 6進行了測試,Chrome瀏覽器22和Firefox 14,他們都開始按預期第一條消息不小於1 KB的工作。實際上,即使第一個超過512字節,Safari也開始打印消息。