簡體   English   中英

Ruby On Rails 3,Pusher,Javascript,AJAX,慢請求

[英]Ruby On Rails 3, Pusher, Javascript, AJAX, Slow requests

我正在使用Ruby on Rails 3后端和HTML AJAX前端構建一個Facebook聊天應用程序。 對於套接字,我使用Pusher 一切正常,但是有一個缺點,那就是性能。

對Pusher API的請求大約需要300毫秒,這太慢了。

觸發Pusher API的代碼是這樣的:

Pusher['presence-chat'].trigger!( 'message_added', { message: message, name: session[:user][:fullname], username: session[:user][:username] } )

Pusher類來自於pusher-developers開發的寶石。

我最近在他們的論壇上發布了帖子,並等待答案,但是我想知道這里是否有人可以為我指明正確的方向以加快速度。

僅供參考:

運行該應用程序的服務器在荷蘭,而我猜他們的服務器不在。

因此,問題是,是什么導致緩慢的Net::HTTP (因為Pusher-gem使用的是這種速度)?

提前致謝!

因此,我從標准的WEBrick服務器切換到Thin(=事件服務器)。

然后將觸發方法更新為異步觸發方法:

Pusher['presence-chat'].trigger_async( 'message_added', { message: message, name: session[:user][:fullname], username: session[:user][:username] } )

現在,請求只需2-4毫秒!

感謝Phil @ Pusher!

嘗試使用一些后台作業推送到bacground中的api

sidekiq上有一些很棒的寶石,工作拖欠了,resque等

也有railscasts可以幫助您輕松理解它

http://railscasts.com/episodes?utf8=%E2%9C%93&search=background+job

如何在前端使用node.js和RoR進行套接字,使用此配置將獲得最佳性能

您可以參考以下網址:http://liamkaufman.com/blog/2012/02/25/adding_real-time_to_rails_with_socket.IO_nodejs_and_backbonejs_with_demo/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM