[OT] Re: http://www-106.ibm.com/developerworks/library/j-nioserver/

2004-02-04 Thread Peter Lin
I'm inclined to wait until JCP comes up with a good way to migrate/support 
non-blocking approach within a servlet container. Event driven technique isn't new by 
any measure and has been proven to scale well. But most cases actually do not require 
the added complexity. Unless an application has to support a large number of 
concurrent requests/users in the 5K+ range, it's usually not cost effective.
 
take SEDA for example, it breaks request processing into stages, so that each stage is 
profiled. If a request is for the same resource, the queue handler can by-pass the 
database call and just return the result. If you read Matt's paper on SEDA, you'll see 
the design goal was to handle /. like effect where a large number of users are 
requesting the same resource. The approach is powerful, but it would be difficult for 
someone with only ASP and CGI experience. Ideally, an API that hides the complexity of 
call-backs, thread sync and gives the appearance of single threaded processing would 
make it easier to develop and debug. For the last year I've been working on projects 
that have to support major scalability. Educating the other developers about async 
processing has been sufficiently difficult and a headache. My biased perspective :)
 
peter lin
 


Reshat Sabiq [EMAIL PROTECTED] wrote:

  
What would this benchmark look like if Tomcat also was configured to use a max of x 
threads, just like sse? If the difference was negligible/none, then IMHO NIO effect is 
no different than playing with max threads value. However, if there was still a 
considerable difference for heavy loads, i would be inclined to changing the API to 
make it compatible w/ both, so that the container could toggle between using IO and 
NIO based on a config, load, etc.
My undeserved 2 cents. :)

-- 
Sincerely,Reshat.---If
 you see my certificate with this message, you should be able to send me encrypted 
e-mail. Please consult your e-mail client for details if you would like to do that.


 ATTACHMENT part 2 application/x-pkcs7-signature name=smime.p7s



-
Do you Yahoo!?
Yahoo! Finance: Get your refund fast by filing online

Re: [OT] Re: http://www-106.ibm.com/developerworks/library/j-nioserver/

2004-02-04 Thread Reshat Sabiq






Peter Lin wrote:

  I'm inclined to wait until JCP comes up with a good way to migrate/support non-blocking approach within a servlet container. Event driven technique isn't new by any measure and has been proven to scale well. But most cases actually do not require the added complexity. Unless an application has to support a large number of concurrent requests/users in the 5K+ range, it's usually not cost effective.
 
take SEDA for example, it breaks request processing into stages, so that each stage is profiled. If a request is for the same resource, the queue handler can by-pass the database call and just return the result. If you read Matt's paper on SEDA, you'll see the design goal was to handle /. like effect where a large number of users are requesting the same resource. The approach is powerful, but it would be difficult for someone with only ASP and CGI experience. Ideally, an API that hides the complexity of call-backs, thread sync and gives the appearance of single threaded processing would make it easier to develop and debug. For the last year I've been working on projects that have to support major scalability. Educating the other developers about async processing has been sufficiently difficult and a headache. My biased perspective :)
 
peter lin
 
  

Yes, if it's really worth the trouble, then perhaps this could be an
option for behind-the-scene implementation, w/o changing the existing
API. If this is at all worthwhile, in the ideal scenario, the container
could toggle its mode from "thread-per-user", to NIO, to what SEDA
does, depending on load, and some optional config settings.
But i still don't know if NIO is just an equivalent of a fancy way of
playing w/ max threads. :)

  

Reshat Sabiq [EMAIL PROTECTED] wrote:

  
What would this benchmark look like if Tomcat also was configured to use a max of x threads, just like sse? If the difference was negligible/none, then IMHO NIO effect is no different than playing with max threads value. However, if there was still a considerable difference for heavy loads, i would be inclined to changing the API to make it compatible w/ both, so that the container could toggle between using IO and NIO based on a config, load, etc.
My undeserved 2 cents. :)

-- Sincerely,Reshat.---If you see my certificate with this message, you should be able to send me encrypted e-mail. Please consult your e-mail client for details if you would like to do that.


  
  
ATTACHMENT part 2 application/x-pkcs7-signature name=smime.p7s

  
  


-
Do you Yahoo!?
Yahoo! Finance: Get your refund fast by filing online
  


-- 
Sincerely,
Reshat.

---
If you see my certificate with this message, you should be able to send me encrypted e-mail. 
Please consult your e-mail client for details if you would like to do that.




smime.p7s
Description: S/MIME Cryptographic Signature