Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2002.06.10;
Скачать: [xml.tar.bz2];

Вниз

Наименьшая из зол - вопрос по скорости/ресурсам для сервера   Найти похожие ветки 

 
SV   (2002-03-23 09:38) [0]

Hi, мастера, мне нужен совет. Надо сделать сервер для 40-50 клиентов. Есть 3 варианта:
1) Каждому клиенту свой поток
(т.к. распред. поцессорного времени по потокам-> моему процессу больше времени, но огоромное число переключений тормозит систему)
2) Всё через перекрытый ввод-вывод или select или AsyncEvent, etc
(На счет произв. не знаю, но одному 1 потоку кант времени на одного)
3) 1 поток на n клиентов
(компромисное решение)

WaitForMultipleMastersHelp(INFINITE)
/SV/


 
paul_shmakov   (2002-03-25 01:39) [1]

microsoft советует использовать везде асинхронный ввод/вывод, что позволяет достичь максимальной производительности с минимальным overhead-ом. хотя программировать его несколько сложнее, чем синхронный ввод/вывод.

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

лучший вариант - это использовать асинхронный ввод/вывод и динамический пул потоков, количество потоков в котором будет менятся в зависимости от нагрузки на сервер. но не стоит делать большое количество потоков в пуле - 3-4 - это максимум.
ну а при низкой нагрузке - 1-2.

в пуле - рабочие потоки, которые и будут выполнять полезную работу. еще один поток - диспетчер, принимающий информацию об асинхронных операциях и помещающий эту информацию в очередь для обработки рабочими потоками.


 
SV   (2002-03-27 21:37) [2]

Вот тут ещё информацию дали: сервер должен на W2000 работать-> можно порты завершения использовать. Там как раз пулы. Как считаете - решение подходящее?



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

Форум: "Сети";
Текущий архив: 2002.06.10;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.009 c
7-31024
Lizard
2002-02-05 21:29
2002.06.10
Почему не получается ? Вроде все как в форуме описывали...


14-31006
Подонок
2002-05-07 11:27
2002.06.10
Что было самое хреновое у вас в жизни?


1-30860
Arhangel
2002-05-29 15:59
2002.06.10
Toolbar?


1-30841
MasterA
2002-05-29 10:23
2002.06.10
MOVE


1-30870
dimich
2002-05-29 16:26
2002.06.10
ImageList...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский