1

I did not find any adequate answers to my question on Internet. So, I am asking here. Here is my situation: I am building an Android application where Android clients need to communicate with each other by passing through a Java-sql server (on the same port). I created the client and server sides but i am wondering what components i should take in count in order to have a server able to handle several thousand of clients ? Let's say for instance 2000 clients. Is a high bandwidth for the server enough to achieve my goal ? (number of connections = bandwidth of server / average bandwidth of client). Or a combination between the bandwidth of clients and server, CPU and RAM is necessary ?

I would appreciate any help.

Best regards,

1
  • 1
    There is no simple answer to a question like this. It depends on the implementation of the server software, on the hardware configuration like number of CPUs, core-count, RAM, and a lot of other things. Furthermore, it depends on what exactly your client-/server-software does per connection, if the connection are persistent connections like with SSH or more temporary like with HTTP. You're question as it is cannot be answered properly. Commented Sep 29, 2014 at 10:45

1 Answer 1

1

ServerSocket Docs Says:The maximum queue length for incoming connection indications (a request to connect) is set to 50. If a connection indication arrives when the queue is full, the connection is refused.

Max. number of clients will vary by some amount every time depending on your processing time, more CPU + RAM is always helpful at the server-side but code should be optimal also at the server-side.

High bandwidth server will only help you recive/send data to/from your clients but the processing time is also important(CPU + RAM + CODE).

Also take a look at this SO Post which talks about the same issue.

Edit:

As Mjoellnir said : "Furthermore, it depends on what exactly your client-/server-software does per connection, if the connection are persistent connections like with SSH or more temporary like with HTTP", you should also take this particulat case into account.

Sign up to request clarification or add additional context in comments.

1 Comment

This is about reacting on incoming connects, only. It is just one aspect of the question.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.