2014-09-29 2 views
1

Я не нашел адекватных ответов на мой вопрос в Интернете. Итак, я спрашиваю здесь. Вот моя ситуация: Я создаю приложение для Android, с которым клиенты Android должны общаться друг с другом, проходя через сервер Java-sql (на том же порту). Я создал клиентские и серверные стороны, но мне интересно, какие компоненты я должен учитывать, чтобы сервер мог обрабатывать несколько тысяч клиентов? Скажем, например, 2000 клиентов. Является ли высокая пропускная способность для сервера достаточной для достижения моей цели? (количество соединений = пропускная способность сервера/средняя пропускная способность клиента). Или необходима комбинация между пропускной способностью клиентов и сервером, процессором и оперативной памятью?Клиент Android - сервер Java: сколько клиентов может поддерживать сервер одновременно?

Буду признателен за любую помощь.

С наилучшими пожеланиями,

+1

Нет простого ответа на такой вопрос. Это зависит от реализации серверного программного обеспечения, от аппаратной конфигурации, такой как количество процессоров, количество ядер, оперативная память и многое другое. Кроме того, это зависит от того, что именно делает ваше клиентское/серверное программное обеспечение для каждого соединения, если соединение является постоянным подключением, например, с SSH или более временным, как с HTTP. Вы сомневаетесь, так как на него нельзя ответить должным образом. – Mjoellnir

ответ

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.

Макс. количество клиентов будет меняться в зависимости от количества раз каждый раз в зависимости от времени обработки, больше ЦП + ОЗУ всегда полезно на стороне сервера, но код должен быть оптимальным и на стороне сервера.

Сервер с высокой пропускной способностью поможет вам получать и отправлять данные в/из ваших клиентов, но время обработки также важно (CPU + RAM + CODE).

Также взгляните на это SO Post, в котором говорится о той же проблеме.

Edit:

Как Mjoellnir сказал: «Кроме того, это зависит от того, что делает именно ваш client-/сервер программного обеспечения в соединение, если соединение являются постоянными соединениями, как с SSH или более временным, как с HTTP ", вы также должны учитывать этот случай.

+0

Это только реакция на входящие подключения. Это всего лишь один аспект вопроса. – Mjoellnir

Смежные вопросы