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

Вниз

какие пиковые нагрузки выдерживает TServerSocket???   Найти похожие ветки 

 
SKR   (2003-04-09 14:22) [0]

Доброго времени...
Подскажите плз
какие пиковые нагрузки выдерживает TServerSocket
в режиме блокировки нитей(stThreadBlocking)...
Особо волнует вопрос о том сколько нитей может быть запущено
одновременно...
И как все это сказывается на времени обработки....


 
Digitman ©   (2003-04-09 16:04) [1]


> сколько нитей может быть запущено
> одновременно


теоретически - число, которое может быть представлено значением типа Integer

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


> как все это сказывается на времени обработки


смотря какова сложность обработки
и - опять же - общее число код.потоков тек.процесса (и приоритеты каждого из них) будет влиять на производительность


 
SKR   (2003-04-09 16:37) [2]

Спасибо конечно за ответ...
Но мне бы хотелось не теоретически...
(все теории из справки я уже прочитал..
а увидеть дохлый сервак нехочется...)
в моей ситуации мощность сервера я могу наращивать
почти до упора возможностей...
сами процессы тоже придельно простые...
(исходник уместится на листе А4)
Мне интересно запустив какое число нитей реально сдохнет
процесс. Мне надо обеспечить большое(~1000) число соединений
на короткий промежуток времени(2-3 мин)
Может кто уже этот компонент мучал...


 
Polevi ©   (2003-04-10 10:03) [3]

1000 соединений - надо использовать асинхронный режим


 
Digitman ©   (2003-04-10 10:18) [4]


> SKR


отложи на время тяжкие думы про TServerSocket (его ограничения, в 1-ю очередь, связаны с ограничениями WinSock на число одновременно открытых тек.процессом и/или системой в целом гнезд)

проведи простой эксперимент :

type
TMyThread = class(TThread)
protected
procedure Execute; override;
end;

const MaxThreads = 1000;

var
Threads: array[0..MaxThreads - 1] of TMyThread;

...

procedure TMyThread.Execute;
begin
while not Terminated do
Sleep(1);
end;

for i:= 0 to MaxThreads - 1 do
begin
Threads[i] := TMyThread.Create(False);
end;

for i:= 0 to MaxThreads - 1 do
begin
Threads[i].Free;
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.012 c
3-34668
Илайдж
2003-05-22 10:56
2003.06.12
Программная упаковка .DB-файла


1-34855
Maks Realov
2003-05-30 12:00
2003.06.12
Вопрос по созданию компонент и автом. зап-ию кода в Design-time


1-34889
Remis
2003-05-31 16:57
2003.06.12
ListBox


3-34716
Alex_x
2003-05-23 13:37
2003.06.12
Express QuantumGrid 4


14-35024
race1
2003-05-24 09:06
2003.06.12
amd die