Google didn't write the servlet spec, all servlet containers follow the spec
sun wrote.

http://java.sun.com/products/servlet/2.3/javadoc/javax/servlet/http/HttpServlet.html


On Thu, Jan 29, 2009 at 5:25 AM, [email protected] <
[email protected]> wrote:

>
> Cant find that anywhere. Can you post a link please
>
> On Jan 28, 2:06 pm, Ben Tilford <[email protected]> wrote:
> > From the documentation
> >
> > Servlets typically run on multithreaded servers, so be aware that a
> servlet
> > must handle concurrent requests and be careful to synchronize access to
> > shared resources. Shared resources include in-memory data such as
> instance
> > or class variables and external objects such as files, database
> connections,
> > and network connections. See theJava Tutorial on Multithreaded
> > Programming<
> http://java.sun.com/Series/Tutorial/java/threads/multithreaded.html>
> > for
> > more information on handling multiple threads in a Java program.
> http://java.sun.com/products/servlet/2.3/javadoc/javax/servlet/http/H...
> >
> > On Wed, Jan 28, 2009 at 8:17 AM, [email protected] <
> >
> >
> >
> > [email protected]> wrote:
> >
> > > My appologies jason, you were correct. I totally forgot about max
> > > connections per browser.
> >
> > > So it would appear that my servlet is multi theaded after all and as a
> > > result, not thread safe :)
> >
> > > Maybe this should be added to the GWT docs as this is something that i
> > > feel could be very easily overlooked.
> >
> > > On Jan 28, 6:25 am, Jason Morris <[email protected]> wrote:
> > > > I tried reproducing your test to see what you were getting. I found
> the
> > > behavior when I ran the code
> > > > in Hosted Mode and executed "serverMethod()" /twice/ before executing
> > > "anotherMethod()" (it didn't
> > > > matter how many Hosted Browsers I had open).
> >
> > > > When running the same test in real browsers (I used Firefox and
> > > Konqueror) the behavior was
> > > > substantially different.
> >
> > > > Like I said, browsers generally only allow for 2 open connections per
> > > server. If you invoke a
> > > > "connection hogging" method twice, you have no more connections to
> invoke
> > > a different method. That
> > > > said, this is a strictly client side issue, GWT's
> RemoteServiceServlet is
> > > not limiting you to a
> > > > single Thread.
> >
> > > > Try the same test with a normal HttpServlet and a RequestBuilder,
> you'll
> > > see the same results as you
> > > > do with RPC.
> >
> > > > [email protected] wrote:
> > > > > @shawn
> > > > > Thats ok :)
> >
> > > > > @jason
> > > > > Well these "Tests" are very basic. i create an app with a simple
> rpc
> > > > > call to the server that does something like this:
> >
> > > > > public boolean serverMethod() {
> > > > >   for (;;) {
> > > > >     if (false) {
> > > > >       break;
> > > > >     }
> > > > >   }
> > > > >   return true;
> > > > > }
> >
> > > > > public boolean anotherMethod() {
> > > > >   return true;
> > > > > }
> >
> > > > > As you would expect, callingserverMethod() creates an infinite loop
> > > > > tying up that thread.
> >
> > > > > then i opened up a second, seperate browser and called
> anotherMethod
> > > > > ().
> >
> > > > > result: Nothing. Not a sausage :)
> >
> > > > > So id say my results are pretty solid. 1 single lonely thread :(
> >
> > > > > On Jan 27, 3:17 pm, Shawn Pearce <[email protected]> wrote:
> > > > >> On Tue, Jan 27, 2009 at 01:42, [email protected] <
> >
> > > > >> [email protected]> wrote:
> >
> > > > >>> I never said it cretaed multiple instances, simply a new thread
> per
> > > > >>> request.
> > > > >> *sigh*.  I must not have had enough coffee in the morning before
> > > replying to
> > > > >> your post.  I read "thread" as "instance" in your original post.
> > >  Sorry.
> >
> > > > >>> On Jan 23, 4:30 pm, Shawn Pearce <[email protected]> wrote:
> > > > >>>> On Fri, Jan 23, 2009 at 08:17, [email protected]<
> > > > >>>> [email protected]> wrote:
> > > > >>>>> Standard servlets create a new thread per request but from a
> few
> > > > >>>>> simple test i have run this appears not to be the case with
> GWT.
> > > > >> Like what everyone else has already said; each concurrent request
> runs
> > > on
> > > > >> its own thread, but that thread isn't necessarily new.
> >
> > > > >> Most containers recycle threads as thread spin-up/shutdown are
> > > relatively
> > > > >> expensive operations.  Pooling threads and recycling them across
> > > requests
> > > > >> reduces the per-request overheads imposed by the container,
> allowing
> > > > >> applications to use a larger percentage of the CPU, and the
> > > per-request
> > > > >> latency target the developer is shooting for.  E.g. in my latest
> GWT
> > > based
> > > > >> application, I was trying to hit <200 ms latency.  The more of
> that
> > > time
> > > > >> that is available to the application, the more useful work I can
> do
> > > within
> > > > >> that window.- Hide quoted text -
> >
> > > > - Show quoted text -- Hide quoted text -
> >
> > - Show quoted text -
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/Google-Web-Toolkit?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to