( asch | 2016. 02. 16., k – 12:11 )

Néhány száz, az mai PC léptékben nem sok. Pláne ha csak időnként jön 1-1 néhány kB-os csomag (bár a frekvenciát nem írtad). Számold ki az összes hálózati sávszélesség igényt, ha ez jóval kisebb, mint egy 100-as Ethernet, akkor ezzel nem lesz probléma.

A néhány száz nyitott kapcsolat szintén smafu egy mai oprendszeren.

Számold ki a forkok memória igényét is. Pl ha 100-at indítasz, akkor minden forknak jut 10 mega, akkor jársz 1 gigánál. Az SQL kapcsolat lehet esetleg memória igényes, azt mindenképpen mérni kell.

Az általad leírt rendszerben szűk keresztmetszet egyedül az SQL oldalon léphet fel. Tapasztalatom szerint ha lassú a háttértár és/vagy bonyolultak az SQL-ek, akkor itt lehet gond. Legjobb először az adatbázist megtervezni, és a tervezett terheléssel szimuláltan írni/olvasni.

A mások által leírt sok kapcsolatot kezelő megoldások valóban hasznosak, de ahogy a C10k nevében is benne van, akkortól válnak ezek a kérdések izgalmassá, ha 10000 kapcsolat van egyszerre, és ezeken aktív forgalmazás is történik. Gondolt el, egy gigás Etherneten elvileg még mindig kb 10kB adatot el lehet küldeni minden egyes kliensnek egy másodpercen belül. Na, ez az a nagyságrend, amikor a socket kezelés módjával, meg a szálakkal, meg a multicore processzorral már nem árt számolni. Ez alatt felesleges erőfeszítés. Azzal csináld, amit a legjobban ismernek a fejlesztők.