Rainbows! Rack HTTP server user/dev discussion
 help / Atom feed
From: Alexandre Riveira <alexandre-VwDbj2YsoUp0ZRtCdD4y8VAUjnlXr6A1@public.gmane.org>
Cc: rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org
Subject: Re: c10k paradigm
Date: Tue, 16 Apr 2013 10:59:55 +0000
Message-ID: <516D2F2B.2080600@objectdata.com.br> (raw)
In-Reply-To: <20130415193403.GA742-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>

Em 15-04-2013 19:34, Eric Wong escreveu:
Hi Eric,


* EventMachine (less memory and cpu usage)
I did a test  using a  core  with  ab-n  3000-c  1000 
http://127.0.0.1:3000/manager and  rainbows  with 3  workers,  
EventMachine  then 25%  cpu free  while  XEpollThreadPool  left only  
5%  free.

*EventMachine.threadpool_size = 50
I found  this code  and run  perfectly.  But  he has  a kind of lock  
slowness  as if using  XEpollThreadPool  but memory consumption  was 
lower.  Wonder  you can put  some  of the  rails Controllers  work  by  
EventMachine  without using  threads  while others  controlles  using  
threads.  Explain  the need.

The application  that  runs on  rainbows  +  rails  is an Enterprise 
Resource Planning  ERP  to  support  e-commerce.  That same  ERP and  
e-commerce  rotate in the same  rainbows.  But  the conclusion  that 
ERP  is  best  run  with  XEpollThreadPool  (or EventMachine + pool 
threads),while the  site was  high competition  C10K  is  best  run  
with  EventMachine.A detail about e-commerce  is that  as much as 
possible  the pages  are cached.


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)?
I appreciate the help!


Alexandre Riveira

Em 15-04-2013 19:34, Eric Wong escreveu:
> Alexandre Riveira <alexandre-VwDbj2YsoUp0ZRtCdD4y8VAUjnlXr6A1@public.gmane.org> wrote:
>> Em 15-04-2013 18:30, Eric Wong escreveu:
>>> Alexandre Riveira <alexandre-VwDbj2YsoUp0ZRtCdD4y8VAUjnlXr6A1@public.gmane.org> wrote:
>>>> What is A better paradigm for C10K paradigm
>>>>
>>>>
>>>>  From what I'm seeing are the best:
>>>>
>>>> EventMachine (less memory and cpu usage)
>>> Not all DB adapters are fully non-blocking.  If you want to do uncached
>>> filesystem I/O, you'll either have to use threads or block, too.
>> would be possible to combine being EventMachine and Threads,
>> If the thread is blocked it would to anotherexample:
>>
>>   use :EventMachine, :pool_size => 50
> (top-posting corrected, Cc: to list re-added)
>
> Yes, you would use EventMachine.threadpool_size = 50, though, with
> Rainbows::EventMachine::TryDefer
>
> http://rainbows.rubyforge.org/Rainbows/EventMachine/TryDefer.html
>
> I forgot about this, not sure if it's used much, but "app.deferred?" is
> an ad-hoc extension which Thin also supports
>

_______________________________________________
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 index

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-15 11:45 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 [this message]
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                     ` c10k paradigm Mark J. Titorenko
     [not found]                       ` <37F3CDA5-C42E-4B91-A74F-E748B956D6BF-Tt5uHDgV0oUB085IDyDbTA@public.gmane.org>
2013-04-16 15:45                         ` Alexandre Riveira
     [not found]                           ` <516D7237.6000700-VwDbj2YsoUp0ZRtCdD4y8VAUjnlXr6A1@public.gmane.org>
2013-04-16 19:00                             ` Mark J. Titorenko

Reply instructions:

You may reply publically 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://bogomips.org/rainbows/

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

  git send-email \
    --in-reply-to=516D2F2B.2080600@objectdata.com.br \
    --to=alexandre-vwdbj2ysoup0zrtcdd4y8vaujnlxr6a1@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

Rainbows! Rack HTTP server user/dev discussion

Archives are clonable:
	git clone --mirror https://bogomips.org/rainbows-public
	git clone --mirror http://ou63pmih66umazou.onion/rainbows-public

Newsgroups are available over NNTP:
	nntp://news.public-inbox.org/inbox.comp.lang.ruby.rainbows
	nntp://ou63pmih66umazou.onion/inbox.comp.lang.ruby.rainbows

 note: .onion URLs require Tor: https://www.torproject.org/
       or Tor2web: https://www.tor2web.org/

AGPL code for this site: git clone https://public-inbox.org/ public-inbox