On 27 Jan 2012, at 23:53, bxqdev <bxq...@themailbay.com> wrote: > > On 1/28/2012 3:41 AM, Pid wrote: >> On 27/01/2012 23:35, bxqdev wrote: >>> >>> >>> On 1/28/2012 3:16 AM, Pid wrote: >>>> On 27/01/2012 22:51, bxqdev wrote: >>>>> >>>>> >>>>> On 1/28/2012 2:39 AM, Pid wrote: >>>>>> On 27/01/2012 21:35, bxqdev wrote: >>>>>>> >>>>>>> >>>>>>> On 1/28/2012 1:16 AM, Pid wrote: >>>>>>>> On 27/01/2012 21:06, bxqdev wrote: >>>>>>>>> >>>>>>>>> >>>>>>>>> On 1/27/2012 8:27 PM, Pid wrote: >>>>>>>>>> On 27/01/2012 14:53, bxqdev wrote: >>>>>>>>>>> Hello, Developers! >>>>>>>>>>> >>>>>>>>>>> 1. What are the premises to use either >>>>>>>>>>> apache.coyote.http11.Http11NioProtocol or >>>>>>>>>>> org.apache.coyote.http11.Http11NioProtocol connectors? >>>>>>>>>> >>>>>>>>>> Eh? Is that what you really mean? >>>>>>>>> >>>>>>>>> i mean what are the reasons to use either connector variant. >>>>>>>> >>>>>>>> NIO can handle more concurrent connections. >>>>>>> >>>>>>> yeah, that's why i use the nio connector. >>>>>>> >>>>>>>> >>>>>>>>>>> 2. Do i get any advantages if i use Sync Servlet Api with >>>>>>>>>>> Http11NioProtocol connector or do i have to use Async Servlet Api >>>>>>>>>>> to get >>>>>>>>>>> the advantages? >>>>>>>>>> >>>>>>>>>> What advantages are you looking for? How much traffic are you >>>>>>>>>> expecting >>>>>>>>>> to handle? >>>>>>>>> >>>>>>>>> a lot of. i'm looking for advantages in throughput and performance, >>>>>>>>> for >>>>>>>>> example. >>>>>>>> >>>>>>>> How much is a lot? >>>>>>> >>>>>>> 10'000/sec >>>>>>> >>>>>>>> How many Tomcats are you running? >>>>>>> >>>>>>> 1 >>>>>>> >>>>>>>> How much RAM/CPU per server etc? >>>>>>> >>>>>>> 8GB/Xeon >>>>>> >>>>>> Only 1 CPU? >>>>> >>>>> yes, but it's multicore. >>>>> >>>>>> >>>>>>>> How big is the average response? >>>>>>> >>>>>>> 300Kb >>>>>> >>>>>> So you want to send 300k * 10000 / sec? Isn't that just under 3Gb per >>>>>> second? >>>>> >>>>> actually when i measured it was less than 1Gb/sec >>>> >>>> I see. Did you identify where the bottleneck was? >>> >>> well, we are getting too far from the subject. >>> can you make up 3 cases when to use 3 combinations of connector+servlet api >>> 1. bio connector + async servlet >>> 2. nio connector + sync servlet >>> 3. nio connector + async servlet >>> i mean in which theoretical case each combination of connector+servlet >>> api is the best choice? >> >> Nope. > > it's not that hard, when you know the subject, but i guess, unfortunately, > it's not the case :)
Oh, that's even more crude than my baiting. Aside from which Mark already gave a reasonable answer. >>>>>>>>>>> 3. How do i choose which one to use in any particular case? >>>>>>>>>> >>>>>>>>>> First, don't prematurely optimise. Have you tested your >>>>>>>>>> application >>>>>>>>>> yet? >>>>>>>>> >>>>>>>>> yes, i need a better throughput and performance. >>>>>>>> >>>>>>>> Please provide details. >>>>>>>> >>>>>>>> How have you optimised your application so far, or are you hoping to >>>>>>>> optimise Tomcat first? >>>>>>> >>>>>>> webapp is optimized, i want to optimize tomcat. >>>>>> >>>>>> How did you optimise your webapp for 3Gb/sec with only 8Gb of RAM? >>>>> >>>>> i wrote nice code. it's serving 1Gb/sec with 8Gb of RAM. are you >>>>> surprised? >>>> >>>> No, I'm curious*. Of course you mean< 8Gb for the JVM process, as the >>>> OS etc consumes ~1.5Gb usually, you want to leave a bit of space too, so >>>> usually end up aiming for 4Gb for the JVM unless you want to use swap as >>>> well. >>>> >>>> Are you using swap to improve your memory performance? >>> >>> is it some kind of sarcasm? >> >> Yep. > > ok, very funny. > >>>>>> In 3 seconds you'll have produced more data than you have RAM, how have >>>>>> you optimised the garbage collector for this? >>>>> >>>>> we use a custom garbage collector. >>>> >>>> Interesting. Of your own design? >>> >>> yes, we're going to opensource it soon. stay tuned. >> >> I shall. > > what garbage collector do you use? Depends. p >>>> I was going to ask whether you had a 64bit JVM and whether you found >>>> CompressedOops to be a performance improvement or not? >>> >>> why would we use 32bit OS/JVM on 8Gb server? >>> actually we don't have any problems to solve. >>> my question is more theoretical. >>> >>>> * There's a few meanings to that, André, I know which one I meant. >>>> >>>>> --------------------------------------------------------------------- >>>>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org >>>>> For additional commands, e-mail: users-h...@tomcat.apache.org >>>>> >>>> >>>> >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org >>> For additional commands, e-mail: users-h...@tomcat.apache.org >>> >> >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org > For additional commands, e-mail: users-h...@tomcat.apache.org > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org