Hallo,
Ik zit met een probleem waar ik niet echt uitkom en op internet kan ik ook niet echt vinden hoe dit gedaan word.
Ik heb een multi-threaded applicatie welke simultaan erg veel verbindingen moet afhandelen. Wanneer er een inkomende verbinding wordt opgezet krijgt deze een eigen thread om zo zijn ding te doen. Echter wanneer er meer dan 350+ verbindingen tegelijk bezig zijn is het niet meer mogelijk nieuwe threads aan te maken en starten.
Nou weet ik dat elke thread een ruimte op de stack alloceerd en dat deze ruimte vol is en dus geen nieuwe meer aangemaakt kunnen worden. Gewoon meer geheugen er bij inprikken is geen echte oplossing.
Nou vraag ik mij dus af hoe doen projecten als bijvoorbeeld apache dit dan? Dat 1 thread meerdere verbindingen afhandelden? Of dat de ene thread in sleep state gezet wordt en de andere op running?
Hopelijk hebben jullie hier antwoord op
Ik zit met een probleem waar ik niet echt uitkom en op internet kan ik ook niet echt vinden hoe dit gedaan word.
Ik heb een multi-threaded applicatie welke simultaan erg veel verbindingen moet afhandelen. Wanneer er een inkomende verbinding wordt opgezet krijgt deze een eigen thread om zo zijn ding te doen. Echter wanneer er meer dan 350+ verbindingen tegelijk bezig zijn is het niet meer mogelijk nieuwe threads aan te maken en starten.
Nou weet ik dat elke thread een ruimte op de stack alloceerd en dat deze ruimte vol is en dus geen nieuwe meer aangemaakt kunnen worden. Gewoon meer geheugen er bij inprikken is geen echte oplossing.
Nou vraag ik mij dus af hoe doen projecten als bijvoorbeeld apache dit dan? Dat 1 thread meerdere verbindingen afhandelden? Of dat de ene thread in sleep state gezet wordt en de andere op running?
Hopelijk hebben jullie hier antwoord op