Avatar billede bredgade Nybegynder
23. december 2002 - 08:55 Der er 6 kommentarer og
1 løsning

Hvor mange tråde på Win2000 server

jeg er ved at lave et server program, som kan have op til 300 ting der skal køres på samme tid, og er derfor lidt i tvivl om windows2000 server kan håndtere 300 tråde? eller er det et hardware problem?.
Vil det hjælpe hvis man deler det op i flere processer f.eks. 10 med 30 tråde hver?
Avatar billede arne_v Ekspert
23. december 2002 - 09:27 #1
Windows 2000 Server bør sagtens kunne håndtere 300 tråde.

Du skal selvfølgelig have memory nok for at det kan køre
fornuftigt.

10 processer med 30 tråde hver vil have mere overhead både
CPU og memory end 1 process med 300 tråde. Plus muligvis
give dig ekstra kode-arbejde for at dele data mellem
processerne. Eneste fordel er at du er mindre sårbar
overfor en process der dør.
Avatar billede bredgade Nybegynder
23. december 2002 - 09:38 #2
Det lyder godt, så fortsætter jeg med de 300 tråde.
Kan man regne ud hvor meget memory man skal bruge?
og minimums størrelsen på CPU'en, eller hvordan kan man sætte Minimumskravene?
Avatar billede skuumm Nybegynder
23. december 2002 - 09:52 #3
Har du tænk på at have en pulje af tråde istedet for at have 300 samtidige...
Avatar billede arne_v Ekspert
23. december 2002 - 09:54 #4
CPU kravene må afhænge af selve opgaven og være ret uafhængige af
trådene (så stort et overhead er der heller ikke på tråde).

Memory-forbrug vil jo afhænge af hvor stor en stak du behøver
per tråd.
Avatar billede arne_v Ekspert
23. december 2002 - 09:56 #5
Jeg tror at det skuumm foreslå er at en worker model, hvor
opgaverne ligges ind i en kø og et mindre antal tråde
står og henter en opgave fra den kø, laver opgaven, henter
næste opgave etc.etc..
Avatar billede bredgade Nybegynder
23. december 2002 - 10:03 #6
Det er et program hvor man kan få jobs udført på forskellige tidspunkter og dermed også på samme tid. Så jobs'ene skal udføres samtidig, derfor bliver jeg vel nød til at udtage en ny tråd fra min trådklasse hver gang et job skal køres. Eller er der en smartere måde?
Hvordan angiver man hvor stor en stak man har brug for pr. tråd? Og hvordan ved man det?. En tråd kunne f.eks. være at man skulle pinge en server kl 21.10.
Avatar billede skuumm Nybegynder
23. december 2002 - 10:24 #7
Alt afhængig opgaverne karaktér vil man kunne lave et design som flg.:
lag 1: GUI
lag 2: lagre opgaver
lag 3: opretter opgaver(ud fra de lagrede) og giver dem videre til en buffer
lag 4: En pulje af tråde ligger i dvale, indtil der kommer en opgave i buffen. derefter vækkes en tråd som udfører opgaven.

Antal tråde skal selvfølgelig afpasses mængden og karaktérne af opgaverne.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester