Nikhil Marathe <nsm.nikhil@...> writes:

> 
> Hi guys,
> 
> I have been working on a sort of libuv guide book - 'An introduction
> to libuv' for the past few days.
> You can view it at http://nikhilm.github.com/uvbook/
> 
> Its only about half complete (lots of TODOs all over), but with the
> recent spate of libuv queries,
> I thought I would just put it out in the open so that people can read
> the parts that are done. I
> eventually want it to cover all the features libuv provides, but for
> now basic I/O, TCP networking
> and threads is almost complete.
> 
> At this point the book requires prior understanding of event loops,
> until I polish up the introduction.
> Feel free to fork and contribute or file issues with the book. Github:
> https://github.com/nikhilm/uvbook.
> 
> This is the first time I'm writing something of such scope, so all the
> feedback I can get is welcome.
> 
> Regards,
> Nikhil
> 
> 


Hi Nikhil,

I am in the phase of development of TCP server on Windows. The server should 
efficiently handle thousands of concurrent TCP connections. When I was looking 
for network libraries to avoid development efforts at low level, I came across 
LIBUV as a stable candidate and your book on the same :-) 

I was going through your book on LIBUV. You mentioning: "Networking in libuv is 
not much different from directly using the BSD socket interface"

This made me little worried. I heard LIBUV encapsulates IOCP and its easier to 
work with LIBUV than working directly with BSD sockets. While, working directly 
with BSD sockets involves understand nitty gritty of the IOCP, thread pools and 
all that stuff.


Ok. Despite of this, let me try to put my query in shortest possible way:

In the tcp-echo-server/main.c, we start listening and get callback 
on_new_connection for each new connection. Similarly, echo_read is callback we 
get when each client sends us request.

Now as long as catering few thousands of connections is concerned, my question 
is:

Does the library takes care of all aspects of the performance (viz. threads and 
number of CPU cores, threadpool, IOCP etc.) and we end up getting "new 
connection", "client request" events nicely and we just need to process them
 
OR 

We can (or need to) do more (threads etc) in this piece of code from efficiency 
and performance perspective?

Thanks,
Atul D. Patil



-- 
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