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

Reply via email to