Re[21]: peer2peer
От: remark Россия http://www.1024cores.net/
Дата: 12.12.06 08:40
Оценка:
Здравствуйте, netch80, Вы писали:

N>Здравствуйте, remark, Вы писали:


R>>Здравствуйте, netch80, Вы писали:


N>>>А у него нету какой-то распределённой или центральной архитектуры как таковой. Есть URL "куда звонить", есть поиск сервера по домену URL. Всё. Если на всех один домен — получится скайп/ICQ. Если разные — получится как в Jabber'е.


R>>Вы сильно-сильно недооцениваете Skype. См. здесь
Автор: squiz
Дата: 09.12.06
.


R>>


N>Вы эта... объясните, накойхер слать мне как возражение ссылку на мой же постинг?

N>Кто на ком стоял, простите?

Ну, если вы под двумя никами входите, то уж извиняйте, как же это определять?


1024cores — all about multithreading, multicore, concurrency, parallelism, lock-free algorithms
Re[22]: peer2peer
От: squiz  
Дата: 12.12.06 10:12
Оценка:
Здравствуйте, remark, Вы писали:

N>>Вы эта... объясните, накойхер слать мне как возражение ссылку на мой же постинг?

N>>Кто на ком стоял, простите?

R>Ну, если вы под двумя никами входите, то уж извиняйте, как же это определять?

R>
Не, не, я (squiz) точно не netch80!
Never underestimate those behind you...
Re[21]: peer2peer
От: squiz  
Дата: 12.12.06 10:12
Оценка:
Здравствуйте, netch80, Вы писали:

N>Вы эта... объясните, накойхер слать мне как возражение ссылку на мой же постинг?

Там не ваш постинг.
Never underestimate those behind you...
Re[22]: peer2peer
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 12.12.06 10:18
Оценка:
Здравствуйте, squiz, Вы писали:

S>Здравствуйте, netch80, Вы писали:


N>>Вы эта... объясните, накойхер слать мне как возражение ссылку на мой же постинг?

S>Там не ваш постинг.

Был мой. ладно, это несущественно. Существенно для того, что я писал — то, что в skype один домен. Все распределённые технологии этого факта не отменяют.
The God is real, unless declared integer.
Re[4]: Как работает сервер ICQ (нельзя открыть более65535 по
От: Ed.ward Россия  
Дата: 28.02.07 15:21
Оценка:
Здравствуйте, netch80, Вы писали:

[skipped]
N>Я понятно рассказал?

Понятно

Но есть вопрос практического плана...

Скажем как в .NET создать такой слушающий сокет который все входящие отправлял бы на один порт? (теперь я знаю, что они должны быть с разных адресов )

При этом все равно остаются какие-то ограничения? На кол-во сокетов? На кол-во входящих TCP соединений.

Меня вопрос как сделать сервер очень интересует
И хотя 65535 клиентов будет вряд-ли, хотелось бы сделать что-нить расширяемое...

Например можно открывать сокет только для отправки данных, а потом сразу его закрывать. ( Сильно, кстати, нагрузит сервер именно постоянная обработка входящих соединений? )

Или проверять сколько времени он не использовался и закрывать...
Для keep alive использовать UDP...

Но это все равно не гарантирует, что не будет 65535 одновременно входящих соединений

Как быть?

Ed.ward
Re[5]: Как работает сервер ICQ (нельзя открыть более65535 по
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 28.02.07 18:33
Оценка:
Здравствуйте, Ed.ward, Вы писали:

EW>Здравствуйте, netch80, Вы писали:


EW>[skipped]

N>>Я понятно рассказал?

EW>Понятно :)


EW>Но есть вопрос практического плана...


EW>Скажем как в .NET создать такой слушающий сокет который все входящие отправлял бы на один порт? (теперь я знаю, что они должны быть с разных адресов :) )


Кто на ком стоял?
По-моему, Вы ничего не поняли. Или же очень странно излагаете. Попробуйте переформулировать.

EW>При этом все равно остаются какие-то ограничения? На кол-во сокетов? На кол-во входящих TCP соединений.


Естественно, есть определённые системные ограничения.

EW>Меня вопрос как сделать сервер очень интересует ;)

EW>И хотя 65535 клиентов будет вряд-ли, хотелось бы сделать что-нить расширяемое...
EW>Например можно открывать сокет только для отправки данных, а потом сразу его закрывать.

Чушь.

EW> ( Сильно, кстати, нагрузит сервер именно постоянная обработка входящих соединений? )


Ровно на столько, на сколько он должен быть нагружен.

EW>Или проверять сколько времени он не использовался и закрывать...

EW>Для keep alive использовать UDP...

Поверх TCP? Смените траву.

EW>Но это все равно не гарантирует, что не будет 65535 одновременно входящих соединений :)


EW>Как быть? :???: :super:


Прочитать наконец учебную литературу и перестать бредить.
The God is real, unless declared integer.
Re[6]: Как работает сервер ICQ (нельзя открыть более65535 по
От: Ed.ward Россия  
Дата: 28.02.07 18:59
Оценка:
Здравствуйте, netch80, Вы писали:

N>Здравствуйте, Ed.ward, Вы писали:


EW>>Здравствуйте, netch80, Вы писали:


EW>>[skipped]

N>>>Я понятно рассказал?

EW>>Понятно


EW>>Но есть вопрос практического плана...


EW>>Скажем как в .NET создать такой слушающий сокет который все входящие отправлял бы на один порт? (теперь я знаю, что они должны быть с разных адресов )


N>Кто на ком стоял?

N>По-моему, Вы ничего не поняли. Или же очень странно излагаете. Попробуйте переформулировать.
Кто стоял на ком стоял, это к чему вообще?

Когда я вызываю accept у listen сокета он мне возвращает сокет причем локальный порт у этого сокета не равен порту у listen сокета...
Хотелось бы узнать как повторить вот такую чарующую картину

d6822140 tcp4 0 48 10.0.0.107.25 10.0.0.11.57138 ESTABLISHED
d6834c80 tcp4 0 0 10.0.0.107.25 192.168.32.30.62075 ESTABLISHED
d67eb3c0 tcp4 0 0 10.0.0.107.25 10.0.0.133.62261 ESTABLISHED
d685c700 tcp4 0 0 10.0.0.107.25 10.0.0.104.55962 ESTABLISHED



EW>>При этом все равно остаются какие-то ограничения? На кол-во сокетов? На кол-во входящих TCP соединений.

N>Естественно, есть определённые системные ограничения.
Ессно есть, какие?
На кол-во сокетов? сколько?
а кол-во входящих TCP соединений? сколько?
еще какие-нибудь?


EW>>Меня вопрос как сделать сервер очень интересует

EW>>И хотя 65535 клиентов будет вряд-ли, хотелось бы сделать что-нить расширяемое...
EW>>Например можно открывать сокет только для отправки данных, а потом сразу его закрывать.
N>Чушь.
Гемоглобин 200!

EW>> ( Сильно, кстати, нагрузит сервер именно постоянная обработка входящих соединений? )

N>Ровно на столько, на сколько он должен быть нагружен.
Я спрашивал про accept.


EW>>Или проверять сколько времени он не использовался и закрывать...

EW>>Для keep alive использовать UDP...
N>Поверх TCP? Смените траву.
Поверх какого TCP?????
Для передачи данных — TCP с закрытием сразу или по неактивности, для keep alive — UDP.
Сменить не против — подЕлитесь своей?


EW>>Но это все равно не гарантирует, что не будет 65535 одновременно входящих соединений

EW>>Как быть?

N>Прочитать наконец учебную литературу и перестать бредить.

Посоветуйте же мне учебную литературу в электронном варианте, научно-популярную — мне skype не писать...

спасибо

Ed.ward
Re[7]: Как работает сервер ICQ (нельзя открыть более65535 по
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 28.02.07 20:34
Оценка: 1 (1)
Здравствуйте, Ed.ward, Вы писали:

N>>Кто на ком стоял?

N>>По-моему, Вы ничего не поняли. Или же очень странно излагаете. Попробуйте переформулировать.
EW>Кто стоял на ком стоял, это к чему вообще?

К стилю изложения.

EW>Когда я вызываю accept у listen сокета он мне возвращает сокет причем локальный порт у этого сокета не равен порту у listen сокета...


Вы в этом точно уверены? Именно локальный порт, именно после accept? Тогда расскажите, где можно такую интересную реализацию найти. Потому что ни BSD sockets, ни Winsock такого не даёт.

EW>Хотелось бы узнать как повторить вот такую чарующую картину

EW>

EW>d6822140 tcp4 0 48 10.0.0.107.25 10.0.0.11.57138 ESTABLISHED
EW>d6834c80 tcp4 0 0 10.0.0.107.25 192.168.32.30.62075 ESTABLISHED
EW>d67eb3c0 tcp4 0 0 10.0.0.107.25 10.0.0.133.62261 ESTABLISHED
EW>d685c700 tcp4 0 0 10.0.0.107.25 10.0.0.104.55962 ESTABLISHED


Я для неё ничего особенного не делал. Стандартные listen() и accept().

EW>>>При этом все равно остаются какие-то ограничения? На кол-во сокетов? На кол-во входящих TCP соединений.

N>>Естественно, есть определённые системные ограничения.
EW>Ессно есть, какие?
EW>На кол-во сокетов? сколько?

В вашей системе — без малейшего понятия, сколько. У себя я вот так могу посмотреть:

$ sysctl -a | grep maxfiles
kern.maxfiles: 8168
kern.maxfilesperproc: 7351

это на всё что ядру видно в качестве "файлового объекта", хотя ограничения на разном уровне (первое — на уровне ofile, второе — filedesc).

EW>а кол-во входящих TCP соединений? сколько?

EW>еще какие-нибудь?

Опять же, без малейшего понятия. Изучайте документацию по вашей системе.

EW>>>Меня вопрос как сделать сервер очень интересует

EW>>>И хотя 65535 клиентов будет вряд-ли, хотелось бы сделать что-нить расширяемое...
EW>>>Например можно открывать сокет только для отправки данных, а потом сразу его закрывать.
N>>Чушь.
EW>Гемоглобин 200!
EW>>> ( Сильно, кстати, нагрузит сервер именно постоянная обработка входящих соединений? )
N>>Ровно на столько, на сколько он должен быть нагружен.
EW>Я спрашивал про accept.

Не понимаю, каким образом из словосочетания "постоянная обработка входящих соединений" можно было сделать вывод, что вопрос про accept() и какие-то странные оценки его производительности (при чём тут она? в любом случае затраты на accept() будут ничтожны по сравнению с работой приложения)

EW>>>Или проверять сколько времени он не использовался и закрывать...

EW>>>Для keep alive использовать UDP...
N>>Поверх TCP? Смените траву.
EW>Поверх какого TCP?????
EW>Для передачи данных — TCP с закрытием сразу или по неактивности, для keep alive — UDP.
EW>Сменить не против — подЕлитесь своей?

Моя Вам не подойдёт. А какой смысл открывать ещё и связь по UDP? Что-то у Вас в дизайне сильно не то.

EW>>>Но это все равно не гарантирует, что не будет 65535 одновременно входящих соединений

EW>>>Как быть?
N>>Прочитать наконец учебную литературу и перестать бредить.
EW>Посоветуйте же мне учебную литературу в электронном варианте, научно-популярную — мне skype не писать...

Тут на сайте есть несколько неплохих начальных статей.
В остальном я бы рекомендовал Стивенса. Где берут в электронном виде — не знаю.
The God is real, unless declared integer.
Re[8]: Как работает сервер ICQ (нельзя открыть более65535 по
От: FractalizeR  
Дата: 05.03.07 10:37
Оценка: 18 (1)
http://www.coversant.net/Products/SoapBoxServer/Features/tabid/98/Default.aspx

Scalability
Independently verified tests show SoapBox Server 2007 Enterprise Edition scales to over 100,000 simultaneous users on a single machine. The server is designed for high traffic volumes. Речь идет о сервере типа messanger, написанного целиком на C#.

http://www.coversant.net/dotnetnuke/Coversant/Blogs/tabid/88/EntryID/10/Default.aspx — это тоже интересно.
This architecture is where we’re at today. It handles over 100,000 simultaneous users without breathing hard, and has been over 500,000 a few times in the lab (the issue has always been client firepower, not server horsepower)
Re[9]: Как работает сервер ICQ (нельзя открыть более65535 по
От: remark Россия http://www.1024cores.net/
Дата: 06.03.07 11:22
Оценка: -2
Здравствуйте, FractalizeR, Вы писали:


FR>http://www.coversant.net/Products/SoapBoxServer/Features/tabid/98/Default.aspx


FR>Scalability

FR>Independently verified tests show SoapBox Server 2007 Enterprise Edition scales to over 100,000 simultaneous users on a single machine. The server is designed for high traffic volumes. Речь идет о сервере типа messanger, написанного целиком на C#.

FR>http://www.coversant.net/dotnetnuke/Coversant/Blogs/tabid/88/EntryID/10/Default.aspx — это тоже интересно.

FR>This architecture is where we’re at today. It handles over 100,000 simultaneous users without breathing hard, and has been over 500,000 a few times in the lab (the issue has always been client firepower, not server horsepower)

Спасибо за ссылочки
Ребята уже решают проблему МегаЮзера, а Kegel всё со своим С10К
Windows


1024cores — all about multithreading, multicore, concurrency, parallelism, lock-free algorithms
Re: Как работает сервер ICQ (нельзя открыть более65535 порто
От: panda gorl  
Дата: 07.03.07 16:55
Оценка:
Здравствуйте, FractalizeR, Вы писали:

FR>Добрый день.


FR>Меня вот заинтересовал такой вопрос. Как же работают популярные серверы мгновенных сообщений типа ICQ, Skype, если один сервер не может держать открытыми более 65535 портов одновременно (каждое клиентское подключение занимает один порт)? Ведь в каждый момент времени каждый сервер имеет миллионы клиентов онлайн.


На один порт можен приконнектиться сколько угодно клиентов.
Вы думаете, как web-серверы работают? Один 80-ый порт — огромная куча асинхронных коннектов на него.
Re[10]: Как работает сервер ICQ (нельзя открыть более65535 п
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 07.03.07 19:34
Оценка:
Здравствуйте, remark, Вы писали:

R>Спасибо за ссылочки ;)

R>Ребята уже решают проблему МегаЮзера, а Kegel всё со своим С10К :)))
R>Windows :super:

Кегель был первым, и решения описанные у него масштабируются на миллионы без проблем.
А как себя поведёт очередь асинхронных сокетных событий при миллионе — ой вопрос.
The God is real, unless declared integer.
Re[11]: Как работает сервер ICQ (нельзя открыть более65535 п
От: FractalizeR  
Дата: 07.03.07 19:50
Оценка:
Здравствуйте, netch80, Вы писали:

N>Здравствуйте, remark, Вы писали:


R>>Спасибо за ссылочки

R>>Ребята уже решают проблему МегаЮзера, а Kegel всё со своим С10К
R>>Windows

N>Кегель был первым, и решения описанные у него масштабируются на миллионы без проблем.

N>А как себя поведёт очередь асинхронных сокетных событий при миллионе — ой вопрос.

Нормально себя поведет. А в чем там проблема? Миллион подзадач для наблюдения за сокетами ведь не создается.
Re[12]: Как работает сервер ICQ (нельзя открыть более65535 п
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 07.03.07 21:50
Оценка:
Здравствуйте, FractalizeR, Вы писали:

FR>Здравствуйте, netch80, Вы писали:


N>>Здравствуйте, remark, Вы писали:


R>>>Спасибо за ссылочки

R>>>Ребята уже решают проблему МегаЮзера, а Kegel всё со своим С10К
R>>>Windows

N>>Кегель был первым, и решения описанные у него масштабируются на миллионы без проблем.

N>>А как себя поведёт очередь асинхронных сокетных событий при миллионе — ой вопрос.

FR>Нормально себя поведет. А в чем там проблема? Миллион подзадач для наблюдения за сокетами ведь не создается.


Степень резиновости очередей неизвестна.
The God is real, unless declared integer.
Re[13]: Как работает сервер ICQ (нельзя открыть более65535 п
От: FractalizeR  
Дата: 08.03.07 14:53
Оценка:
Здравствуйте, netch80, Вы писали:

N>Здравствуйте, FractalizeR, Вы писали:


FR>>Здравствуйте, netch80, Вы писали:


N>>>Здравствуйте, remark, Вы писали:


R>>>>Спасибо за ссылочки

R>>>>Ребята уже решают проблему МегаЮзера, а Kegel всё со своим С10К
R>>>>Windows

N>>>Кегель был первым, и решения описанные у него масштабируются на миллионы без проблем.

N>>>А как себя поведёт очередь асинхронных сокетных событий при миллионе — ой вопрос.

FR>>Нормально себя поведет. А в чем там проблема? Миллион подзадач для наблюдения за сокетами ведь не создается.


N>Степень резиновости очередей неизвестна.


http://www.coversant.com/Products/SoapBoxServer/Overview/tabid/99/Default.aspx
Этот сервер написан на .NET Framework с использованием асинхронных сокетов.
Re[14]: Как работает сервер ICQ (нельзя открыть более65535 п
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 08.03.07 16:06
Оценка:
Здравствуйте, FractalizeR, Вы писали:

FR>>>Нормально себя поведет. А в чем там проблема? Миллион подзадач для наблюдения за сокетами ведь не создается.

N>>Степень резиновости очередей неизвестна.
FR>http://www.coversant.com/Products/SoapBoxServer/Overview/tabid/99/Default.aspx
FR>Этот сервер написан на .NET Framework с использованием асинхронных сокетов.

Для оценки реальных возможностей и влияющих на них факторов смысла в этом описании — ноль целых хрен десятых.
The God is real, unless declared integer.
Re[15]: Как работает сервер ICQ (нельзя открыть более65535 п
От: FractalizeR  
Дата: 08.03.07 20:52
Оценка:
Здравствуйте, netch80, Вы писали:

N>Здравствуйте, FractalizeR, Вы писали:


FR>>>>Нормально себя поведет. А в чем там проблема? Миллион подзадач для наблюдения за сокетами ведь не создается.

N>>>Степень резиновости очередей неизвестна.
FR>>http://www.coversant.com/Products/SoapBoxServer/Overview/tabid/99/Default.aspx
FR>>Этот сервер написан на .NET Framework с использованием асинхронных сокетов.

N>Для оценки реальных возможностей и влияющих на них факторов смысла в этом описании — ноль целых хрен десятых.


Ваше высказывание бессмысленно. Кроме того, вам было лень поискать в Google допольнительную информацию?
http://www.coversant.net/dotnetnuke/Coversant/Blogs/tabid/88/EntryID/9/Default.aspx
Re[16]: Как работает сервер ICQ (нельзя открыть более65535 п
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 08.03.07 21:23
Оценка:
Здравствуйте, FractalizeR, Вы писали:

N>>Для оценки реальных возможностей и влияющих на них факторов смысла в этом описании — ноль целых хрен десятых.

FR>Ваше высказывание бессмысленно.
Всяко осмысленнее, чем наезд на Кегеля.

FR> Кроме того, вам было лень поискать в Google допольнительную информацию?

FR>http://www.coversant.net/dotnetnuke/Coversant/Blogs/tabid/88/EntryID/9/Default.aspx
Там очень много специфических дотнетовских деталей (типа того что на одног клиента прожиралось до 100K памяти, и надо было уйти от чистоты модели к работоспособному изделию). Может, для дотнетчика это и полезно. Но мне это ничего не даёт — кроме голого факта, что собственно ядро не помешало такой работе. Что ж, тоже данные. Но мало.
The God is real, unless declared integer.
Re[17]: Как работает сервер ICQ (нельзя открыть более65535 п
От: FractalizeR  
Дата: 09.03.07 08:53
Оценка:
Здравствуйте, netch80, Вы писали:

N>Здравствуйте, FractalizeR, Вы писали:


N>>>Для оценки реальных возможностей и влияющих на них факторов смысла в этом описании — ноль целых хрен десятых.

FR>>Ваше высказывание бессмысленно.
N>Всяко осмысленнее, чем наезд на Кегеля.

FR>> Кроме того, вам было лень поискать в Google допольнительную информацию?

FR>>http://www.coversant.net/dotnetnuke/Coversant/Blogs/tabid/88/EntryID/9/Default.aspx
N>Там очень много специфических дотнетовских деталей (типа того что на одног клиента прожиралось до 100K памяти, и надо было уйти от чистоты модели к работоспособному изделию). Может, для дотнетчика это и полезно. Но мне это ничего не даёт — кроме голого факта, что собственно ядро не помешало такой работе. Что ж, тоже данные. Но мало.

Какие же данные вам нужны?
Re[8]: peer2peer
От: ironwit Украина  
Дата: 07.06.07 13:50
Оценка:
Здравствуйте, netch80, Вы писали:

оффтопный вопрос.
где такими вещами занимаются? имеется в виду сервера, распределенные сервера, SIP итд?
реально мне интересна такая тема. чтото похожее делаю на текущей работе но приходится просто много изобретать велосипедов. с большим бы удовольствием ушел в крепкую команду студентом хоть вроде и не сильно студент
... << RSDN@Home 1.2.0 alpha rev. 0>>
Я не умею быть злым, и не хочу быть добрым.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.