Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.13;
Скачать: CL | DM;

Вниз

Взаимодействие Клиент - Сервер   Найти похожие ветки 

 
S@shka ©   (2003-12-10 12:48) [0]

Есть серверное приложение к которому соединяются клиентские и передают порцию данных.
Причем порции данных не большие и частота их передачи не более чем раз в 2 минуты.
Вопрос
Я стою приложение следующим образом:
Клиент подключается, передает данные принимает ответ и отключается.
Почему я так делаю - потому что боюсь держать много висящих просто так клиентов. При том что их число может быть более 1000.
Правильно ли я делаю? Или в моих рассуждениях нет разумного.
Исп-ю Indy компоненты. (связь на основе TCP есно)


 
Digitman ©   (2003-12-10 13:03) [1]


> потому что боюсь держать много висящих просто так клиентов


"боюсь" - слишком абстрактное и размытое объяснение
боишься ЧЕГО конкретно ?


 
S@shka ©   (2003-12-10 13:09) [2]

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


 
Digitman ©   (2003-12-10 13:32) [3]

"сервак" здесь ни при чем вообще

ограничением явл-ся макс.кол-во код.потоков в контексте процесса и макс.кол-во код.потоков для ОС в целом

кр.того, ограничением явл-ся макс.кол-во одновременно созданных и существующих гнездовых объектов Winsock

если "боишься", то просто реализуй на стороне сервера логику отвержения новых кл.запросов на коннект, если число уже установленных и активных коннектов равно некоему предельно допустимому значению, в твоем случае, скажем, = 1000.


 
atruhin ©   (2003-12-11 07:47) [4]

>>Digitman © Зачем всё это?
S@shka в своем вопросе поступил почти правильно блокирующий сокет и всё. Если небольшие запросы идут часто можно создать несколько потоков обработки и работать через порт завершения TCompletionPort.
Правда под 95 наверно непойдёт.


 
Digitman ©   (2003-12-11 08:15) [5]


> atruhin


ты вообще представляешь, как внутри организован TIdTCPServer ?
чувствуется - слабо



Страницы: 1 вся ветка

Текущий архив: 2004.02.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.034 c
14-39096
Danilka
2004-01-22 14:30
2004.02.13
Light Alloy потерялся.


14-39023
Valerian
2004-01-26 08:47
2004.02.13
Не могу установить некоторые программы и игры


7-39121
fiatik
2003-11-28 23:17
2004.02.13
Help! Как запросить у компа: какие системе доступны компорты?


14-39088
Кот Бегемот
2004-01-23 16:28
2004.02.13
Ураааа !!! Любимый форум зарработаллл !!!


7-39106
Администратор
2003-11-22 22:06
2004.02.13
CTRL+ALT+DELETE