RE: On pipelining

> Basically,  in the following scenario (from mike sabin)..
>
> >  Request1
> >  Request2
>  > Request3
> >         Response1
> >           Response2
>  >         Response3
> >(although, clearly, if there are many requests we might expect
> >the request stream to partially overlap the response stream).
>
> would "resolution of request2" await the completion of
> transmission
> of response1? Or can these  3 requests be resolved simultaneously
> (say, using
> seperate threads); with first response1 sent, then 2, then 3.
> That is, could a multi-threaded server create response2,  wait for
> succesful transmission of  response1 (over the persistent
> connection),
> and then transmit response2 (over this
> same persistent connection)?

If request1 is a GET, HEAD, TRACE, or OPTIONS, then I would say that
the server could legitimately assume that it had no side effects.
One could be more conservative and assume that any CGI (or CGI-like)
resource had side effects.  Having assumed that there were no side
effects it might be reasonable to overlap the processing, if you
have the buffer space to spare.

--
Scott Lawrence      Director of R & D        <lawrence@agranat.com>
Agranat Systems   Embedded Web Technology   http://www.agranat.com/

Received on Friday, 21 January 2000 08:04:01 UTC