[JDEV] scaling a single server?
Dave Smith
dsmith at ai.uwf.edu
Fri Feb 4 16:34:10 CST 2000
> I don't know what the limitation of Linux for the sockets are, but the
> absolute limitation is 64k since the port value is 2 bytes wide. So, with
> TCP/IP you cannot have more then 64k connections (this is a theoretical
> maximum, in reality more limitations apply) even if you have a
> server-machine that can handle the load.
Err..this isn't true (to the best of my knowledge). There are only 65536
ports available for *listening* on most BSD socket impls. When a TCP
connection arrives it doesn't stay on the port it initally connects on.
Instead, the IP stack does some magic and the connection is diverted to a
"pseudo-port" (if you will) that handles the connection from then on. Thus,
you can have many more actualy socket connections than port numbers
(assuming your kernel is setup to handle it). At least, this is my
understanding of the matter... :)
> any messages. You may end up with a server that processes nearly no data,
> but all its resources are exhausted because of the users connected.
>
> I strongly recommend connectionless protocols and UDP!
>
Point taken. However, I would remind you again that the point of jabber is
simple clients. :) Right now it's fairly trivial to write a jabber client.
If every author had to add in flow-control and reliable delivery, client
complexity would be significantly increased.
D.
More information about the JDev
mailing list