|Subject:||Re: advantages from ?|
|Posted by:||Remy Lebeau (TeamB) (firstname.lastname@example.org)|
|Date:||Tue, 25 Nov 2003|
"Cult" <email@example.com> wrote in message
> What are the advantages with Indy - seen against the already existing
> component with (TServerSocket)
If you want to keep using TClientSocket and TServerSocket, you can. The big
different between then and Indy is that they support both blocking and
non-blocking modes, whereas Indy is blocking only. But on the other hand,
Indy is much easier to code for than the others are, and provides many many
functions for all sorts of different socket operations that you would have
to implement manually with the other components.
> Going to develop a larger appliaction which should be able to
> support 2000 simultanious clientsockets (sending data to the
> server) - and i need to choose which socket approach i should pick.
Part of Indy's design for its servers is that it creates a new thread for
each client that connects to it. If you are going to have that many clients
connected at the same time, you're going to run into problems. Indy 10 will
address that issue, but currently Indy 9 will not handle 2000 clients very
well. Mainly because the OS itself can't handle that many threads in a
single process at a time, it will run out of resources/memory for the
If you use TServerSocket, you can use it in non-blocking mode, and run
everything through the main thread. The problem with that scenerio, though,
is that the sockets will be serialized, the clients would have to wait on
each other to do things, because the server will only be able to process one
socket at a time.
> /By the way: i have version 8.xx.xx in my BCB60 - do you have
> a link on how to update this ?
You can get the latest version from Indy's website,
advantages from ? posted by Cult on Wed, 26 Nov 2003