Модераторы: LSD, AntonSaburov

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> А сколько сокетов может быть? Колличество Socket одновременно на серве 
V
    Опции темы
KOp4iK
Дата 31.8.2006, 17:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 118
Регистрация: 26.11.2004
Где: Латвия

Репутация: нет
Всего: 3



День добрый!
Есть сервер и куча клиентов. Которым не просто надо взаимодействовать, а взаимодействовать одновременно(ну почти smile ).
Ну и собственно 2 вопросса:
1. А правильно ли изначально много (в моём понимании >1000) клиентов делать через сокет? Нееее не вдруг есть другие варианты...

2. Что-то у меня такая подозряна что одновременно сервер не вынесет столько сокетов... Где-то я слышал что можно не держать их(сокеты) постоянно вот только если их не держать постоянно не слошком ли дорого будет создавать ЦЕЛЫЙ сокет для одного сообщения? И вообще где можно про это почитать а то серч как-то немомогает smile 

Зарание спасибо!

ЗЫ Как пример может служить схема чата(много клиентов и большой поток информации), но ко всему этому на сервере идут большие вычисления...
ЗЗЫ Был бы очень признателен еслиб вы поделились опытом реально работающих подобных системну... хотяб сколько реально коннектов одновременно и что за железо

Это сообщение отредактировал(а) KOp4iK - 31.8.2006, 17:58
PM MAIL   Вверх
LSD
Дата 31.8.2006, 23:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 19
Всего: 538



1. А как иначе, если взаимодействие через сеть и все клиенты соединяются с разных компьютеров?

2. Количество соединений не так критично, как количество данных передаваемых через них.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
KOp4iK
Дата 1.9.2006, 09:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 118
Регистрация: 26.11.2004
Где: Латвия

Репутация: нет
Всего: 3



Цитата

1. А как иначе, если взаимодействие через сеть и все клиенты соединяются с разных компьютеров?   

яж говорю 
Цитата

Нееее не вдруг есть другие варианты...  smile 


Цитата

2. Количество соединений не так критично, как количество данных передаваемых через них. 

т.е. если 1000 ... 2000 человек будут весеть онлайн и посылать/получать раз в минуту по байтику то всё будет летать?!?!? Если честно то слабо вериться ... не ну я всё понимаю но тыща - две коннектов ЭТОЖЕ МНОГО!!! smile 

И тогда сразу вопрос напрашиваеться: А что можно сделать если и клиентов много и данных все посылают много???
PM MAIL   Вверх
LSD
Дата 1.9.2006, 10:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 19
Всего: 538



Цитата(KOp4iK @  1.9.2006,  10:55 Найти цитируемый пост)
т.е. если 1000 ... 2000 человек будут весеть онлайн и посылать/получать раз в минуту по байтику то всё будет летать?!?!?

Попробуй.

Цитата(KOp4iK @  1.9.2006,  10:55 Найти цитируемый пост)
И тогда сразу вопрос напрашиваеться: А что можно сделать если и клиентов много и данных все посылают много???

Оптимизировать smile


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
KOp4iK
Дата 1.9.2006, 13:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 118
Регистрация: 26.11.2004
Где: Латвия

Репутация: нет
Всего: 3



Цитата

Цитата(KOp4iK @  1.9.2006,  10:55 ) 
т.е. если 1000 ... 2000 человек будут весеть онлайн и посылать/получать раз в минуту по байтику то всё будет летать?!?!? 

Попробуй.


А как пробовать-то на одной машине?!??!!? Это читерство!!! А на разных - где я столько возьму?!?!?

Цитата

Цитата(KOp4iK @  1.9.2006,  10:55 ) 
И тогда сразу вопрос напрашиваеться: А что можно сделать если и клиентов много и данных все посылают много??? 

Оптимизировать 


только КАК? Вы не подумайте ях не прошу за меня код писать ... просто никаких мыслей на тему оптимизирования нет smile
PM MAIL   Вверх
skhilkov
Дата 1.9.2006, 14:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 371
Регистрация: 11.4.2006
Где: TOMSK

Репутация: нет
Всего: 7



По-моему в случае чата 1000 - 2000 клиентов не критично, а вот если они файло тянуть будут или заливать(еще и одновременно..  smile ), тогда конечно что-то надо делать с оптимизацией, но это уже от задачи зависит...


--------------------
Кто понял жизнь, тот не спешит. 
PM MAIL   Вверх
COVD2
Дата 1.9.2006, 15:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 28
Регистрация: 10.6.2006

Репутация: нет
Всего: 1



анекдот помните? "Что же вы Родион старушку за десять копеек? Не скажите, десять старушек - уже рубль." Самая простая оптимизация - добавить сервер.  smile 
PM MAIL   Вверх
KOp4iK
Дата 1.9.2006, 21:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 118
Регистрация: 26.11.2004
Где: Латвия

Репутация: нет
Всего: 3



Цитата

 а вот если они файло тянуть будут или заливать(еще и одновременно..   ), 

нее так всё брутально не будет... говорюж: чат + вычисления

Цитата

Самая простая оптимизация - добавить сервер.  

как учит нас теория при сложности алгоритма O^3 - добавлялка сломаеться... да и хоцца как раз узнать при одной среднестатистической машине(3Ghz 1GB) что можно ожидать! smile 
PM MAIL   Вверх
LSD
Дата 4.9.2006, 10:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 19
Всего: 538



Цитата(KOp4iK @  1.9.2006,  14:12 Найти цитируемый пост)
А как пробовать-то на одной машине?!??!!? Это читерство!!! А на разных - где я столько возьму?!?!?

Достаточно один сервер и 2-3 машины которые будут имитировать клиентов.

Цитата(KOp4iK @  1.9.2006,  14:12 Найти цитируемый пост)
только КАК? Вы не подумайте ях не прошу за меня код писать ... просто никаких мыслей на тему оптимизирования нет

Будут проблемы с производительностью, будешь оптимизировать. И почитай O'Reilly - Java Network Programming.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
Mayk
Дата 4.9.2006, 15:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


^аВаТаР^ сообщение>>
****


Профиль
Группа: Участник
Сообщений: 2616
Регистрация: 22.5.2005
Где: за границей разум а

Репутация: нет
Всего: 134



Цитата(KOp4iK @  31.8.2006,  21:56 Найти цитируемый пост)
1. А правильно ли изначально много (в моём понимании >1000) клиентов делать через сокет? Нееее не вдруг есть другие варианты...

Цитата(LSD @  1.9.2006,  03:13 Найти цитируемый пост)
1. А как иначе, если взаимодействие через сеть и все клиенты соединяются с разных компьютеров?

Имхо лучше в данном варианте гуглить в сторону широковещательных и многоадресных передач. broadcast и multicast.  

Цитата(http://athena.vvsu.ru/net/book/mcast.html#8)

Групповая рассылка, по сравнению с индивидуальной, уменьшает нагрузку на сеть. Предположим, дейтаграмму следует отправить 500 получателям. Используя индивидуальную рассылку, отправитель должен сгенерировать 500 дейтаграмм, каждая из которых будет отправлена одному узлу. При мультикастинге отправитель создает одну дейтаграмму с групповым адресом назначения; по мере продвижения через сеть дейтаграмма будет дублироваться только на "развилках" маршрутов от отправителя к получателям. В лучшем случае - если таких развилок не будет, то есть, например, все получатели находятся в одной сети Ethernet, - экономия трафика будет 500-кратной. При этом сохраняются также вычислительные ресурсы промежуточных узлов.




Цитата(KOp4iK @  2.9.2006,  01:13 Найти цитируемый пост)
среднестатистической машине(3Ghz 1GB) что можно ожидать! 

Более чем наверняка зависит от ОСи. ЯВА скорее использует возможности ОС, чем читает/пишет с сетевой платы.


Кстати, в моём линуксе кол-во одновременно открытых файлов(вкл. сокеты) не превышает тысячу с лишним. А дальше идёт ой, который преобразуется в яве в TooManyFilesOpenedException, или около того.





Это сообщение отредактировал(а) Mayk - 4.9.2006, 15:53


--------------------
 Здесь был кролик. Но его убили.
Человеки < кроликов, йа считаю.
PM MAIL WWW ICQ   Вверх
LSD
Дата 4.9.2006, 16:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 19
Всего: 538



Цитата(Mayk @  4.9.2006,  16:52 Найти цитируемый пост)
Имхо лучше в данном варианте гуглить в сторону широковещательных и многоадресных передач. broadcast и multicast.

1. в интернете широковещательные запросы не пройдут
2. UDP не гарантирует доставку
3. в какдом пакете придется передавать информацию, для аутентификации клиента
4. SSL к ним не прикрутишь

Как думаешь почему ни одна IM служба не использует UDP, а только TCP/IP?


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
KOp4iK
Дата 4.9.2006, 20:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 118
Регистрация: 26.11.2004
Где: Латвия

Репутация: нет
Всего: 3



Цитата

Будут проблемы с производительностью, будешь оптимизировать. И почитай O'Reilly - Java Network Programming.


За книгу пасиб однозначный!!! Будем искать и читать!!!

И всётаки не хоцца закрывать тему вдруг кто-нить ещё чё-нить придумает  smile 

Это сообщение отредактировал(а) KOp4iK - 4.9.2006, 20:23
PM MAIL   Вверх
Mayk
Дата 5.9.2006, 11:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


^аВаТаР^ сообщение>>
****


Профиль
Группа: Участник
Сообщений: 2616
Регистрация: 22.5.2005
Где: за границей разум а

Репутация: нет
Всего: 134



Цитата(LSD @  4.9.2006,  20:26 Найти цитируемый пост)

1. в интернете широковещательные запросы не пройдут
2. UDP не гарантирует доставку
3. в какдом пакете придется передавать информацию, для аутентификации клиента
4. SSL к ним не прикрутишь

1 решается использованием многоадресной передачей AFAICS
2-4 лежат на программере.

А теперь представим что нам надо передать 1 мегабайт информации каждому клиенту.
(1 мегабайт в 
Цитата(KOp4iK @  2.9.2006,  01:13 Найти цитируемый пост)
вычисления
х
не такая редкая и большая цифра.)
Всего клиентов 1000. 1000 * 1024 ~= гигабайт исходящего траффика. 


Цитата(LSD @  4.9.2006,  20:26 Найти цитируемый пост)
2. UDP не гарантирует доставку

Вот ещё вопрос - что быстрее и надежней - разобраться с UDP и multicast'ом и отпарвить пусть даже 10 метров при плохой связи, или отправить 1 гиг в сеть при идеальной связи по TCP?

Цитата(LSD @  4.9.2006,  20:26 Найти цитируемый пост)

Как думаешь почему ни одна IM служба не использует UDP, а только TCP/IP?

Перебор. Zephyr is a UDP-based protocol.




--------------------
 Здесь был кролик. Но его убили.
Человеки < кроликов, йа считаю.
PM MAIL WWW ICQ   Вверх
KOp4iK
Дата 5.9.2006, 12:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 118
Регистрация: 26.11.2004
Где: Латвия

Репутация: нет
Всего: 3



ТАК по ходу топ начинаеться скатываться в оффтоп... Сорри но просто не заметил сразу Всем клиентам надо посылать разные данные... т.е. иногда данные будут одинаковые ... но в основном разные!!!
PM MAIL   Вверх
COVD2
Дата 5.9.2006, 15:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 28
Регистрация: 10.6.2006

Репутация: нет
Всего: 1



Копчик, судя по всему вы хотите удивить мир новой сетевой игрой.  smile  А оффтоп от абстрактности вопросов smile. Виндоуз позволяет адресоваться приблизительно к 65000 портов. Приблизительно первая тысяча зарезервирована за системными портами. Значит остается 64 тыс. портов. Однако машина врядли сможет обслужить 64000 сокетов. А сколько сможет - зависит много от чего.

Это сообщение отредактировал(а) COVD2 - 5.9.2006, 17:14
PM MAIL   Вверх
Страницы: (3) Все [1] 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Работа с сетью | Следующая тема »


 




[ Время генерации скрипта: 0.1668 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.