Also, I've always wondered why the http request callback didn't follow the
standard signature of (err, data).  I wonder if they broke convention to
make the tiny home-page example for PR purposes.

On Tue, Feb 14, 2012 at 3:31 PM, billywhizz <[email protected]> wrote:

> wouldn't it be nice if the connection in both the http client and
> server were event emitters that emitted the request, close, upgrade
> and continue events? would make writing this kind of server, which
> seems to be a pretty common pattern, much simpler and more correct
> imho.
>
> On Feb 14, 11:53 am, mscdex <[email protected]> wrote:
> > On Feb 14, 4:54 am, cong <[email protected]> wrote:
> >
> > > as we know,multiple get requests can arrive at the same time, which
> means there will be mutiple listeners on 'data' event, when my backend tcp
> server give a response, multiple get funciton recv the data at the same
> time, but I only want the response of their own.
> >
> > > are there some workaround,all is it true that we can't use one tcp
> connection for serving multiple users?
> >
> > > any help is appreciated
> >
> > If you really want to do it in parallel instead, you'll probably need
> > to have your tcp backend tag responses using some id that is unique to
> > each connection so that each http request knows if specific incoming
> > data is meant for it or another http request. Additionally, you might
> > consider writing a class or function that wraps the tcp stream and
> > emits events containing whole incoming messages, to make things a
> > little easier. This would allow you to do something like:
> >
> > // inside http request handler
> > streamWrapper.write('foo');
> > streamWrapper.once(someUniqueId, .....);
> > // or use .on() if you expect more than one message, but remember to
> > remove the event handler later on so as to prevent leaking
> >
> > // inside streamWrapper somewhere after forming a complete incoming
> > message
> > streamWrapper.emit(uniqueIdFromData, ....);
>
> --
> Job Board: http://jobs.nodejs.org/
> Posting guidelines:
> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
> You received this message because you are subscribed to the Google
> Groups "nodejs" 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/nodejs?hl=en?hl=en
>

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" 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/nodejs?hl=en?hl=en

Reply via email to