Rainbows! Rack HTTP server user/dev discussion
 help / color / mirror / code / Atom feed
From: "Mark J. Titorenko" <mark-Tt5uHDgV0oUB085IDyDbTA@public.gmane.org>
To: Rainbows! list <rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org>
Subject: Re: c10k paradigm
Date: Tue, 16 Apr 2013 19:19:22 +0100	[thread overview]
Message-ID: <37F3CDA5-C42E-4B91-A74F-E748B956D6BF@titorenko.net> (raw)
In-Reply-To: <20130416172417.GA12658-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>

On 16 Apr 2013, at 18:24, Eric Wong <normalperson-rMlxZR9MS24@public.gmane.org> wrote:
> Did you modify your app to use app.deferred? + TryDefer as I pointed
> you to in the other message?
> 
>> Could it be that  the controllers  of the  rails  would run without
>> party  pool  threads  only with  EventMachine  (C10K) while others
>> would use the  controller  with  EventMachine thread pool  (erp)?
> 
> That should allow some rails controllers to use threads
> (app.deferred? => true) while others do not use threads
> (app.deferred? => false).  Keep in mind this is not a very common
> configuration, so not many people have experience with it in
> production.

In case it's of any use I am using #deferred? and TryDefer in my Rails app.  I have it set up such that all controller requests are deferred (ie. use threads) apart from those which are, by their nature, asynchronous - eg. I am using Faye mounted at '/ext/bayeux' within my application which already uses the [-1, {}, []] technique to provide an async response.  I have #deferred set up by including a module in my Rails::Application instance.

In application.rb:

module App::Application < Rails::Application
  require 'extensions/deferred_application'
  include Extensions::DeferredApplication
end

In lib/extensions/deferred_application.rb:

module Extensions
  module DeferredApplication
    BAYEUX_REGEX = %r(^/ext/bayeux(/.*)?$).freeze

    def deferred?(env)
      !(env['REQUEST_PATH'] =~ BAYEUX_REGEX)
    end
  end
end

HTH!

Cheers,

Mark.

_______________________________________________
Rainbows! mailing list - rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org
http://rubyforge.org/mailman/listinfo/rainbows-talk
Do not quote signatures (like this one) or top post when replying


  parent reply	other threads:[~2013-04-16 18:29 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-15 11:45 c10k paradigm Alexandre Riveira
     [not found] ` <516BE872.5060006-VwDbj2YsoUp0ZRtCdD4y8VAUjnlXr6A1@public.gmane.org>
2013-04-15 18:30   ` Eric Wong
     [not found]     ` <516C2A48.3070808@objectdata.com.br>
     [not found]       ` <516C2A48.3070808-VwDbj2YsoUp0ZRtCdD4y8VAUjnlXr6A1@public.gmane.org>
2013-04-15 19:34         ` Eric Wong
     [not found]           ` <20130415193403.GA742-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
2013-04-16 10:59             ` Alexandre Riveira
2013-04-16 11:18             ` Alexandre Riveira
     [not found]               ` <516D338C.9060408-VwDbj2YsoUp0ZRtCdD4y8VAUjnlXr6A1@public.gmane.org>
2013-04-16 17:24                 ` Eric Wong
     [not found]                   ` <20130416172417.GA12658-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
2013-04-16 15:11                     ` Alexandre Riveira
     [not found]                       ` <516D6A0C.50406-VwDbj2YsoUp0ZRtCdD4y8VAUjnlXr6A1@public.gmane.org>
2013-04-16 18:35                         ` Eric Wong
     [not found]                           ` <20130416183500.GA10540-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
2013-04-16 17:19                             ` Alexandre Riveira
     [not found]                               ` <516D882B.4070402-VwDbj2YsoUp0ZRtCdD4y8VAUjnlXr6A1@public.gmane.org>
2013-04-16 20:48                                 ` Eric Wong
     [not found]                                   ` <20130416204813.GA15083-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
2013-04-16 20:27                                     ` c10k paradigm [SOLVED] Alexandre Riveira
2013-04-16 18:19                     ` Mark J. Titorenko [this message]
     [not found]                       ` <37F3CDA5-C42E-4B91-A74F-E748B956D6BF-Tt5uHDgV0oUB085IDyDbTA@public.gmane.org>
2013-04-16 15:45                         ` c10k paradigm Alexandre Riveira
     [not found]                           ` <516D7237.6000700-VwDbj2YsoUp0ZRtCdD4y8VAUjnlXr6A1@public.gmane.org>
2013-04-16 19:00                             ` Mark J. Titorenko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://yhbt.net/rainbows/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=37F3CDA5-C42E-4B91-A74F-E748B956D6BF@titorenko.net \
    --to=mark-tt5uhdgv0oub085idydbta@public.gmane.org \
    --cc=rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://yhbt.net/rainbows.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).