TsgcWebSocketServer_HTTPAPIEigenschappen › FineTune

FineTune Eigenschap

Kernelmodus-knoppen op laag niveau die bepalen hoe http.sys aanvragen in de wachtrij plaatst, verwerkt en afhandelt.

Syntaxis

__property TsgcServerHTTPAPI_FineTune * FineTune;

Standaardwaarde

QueueLength=1000, SkipIOCPOnSuccess=False, OperatingMode=ompClassic, HighPerfAcceptsPerWorker=4

Opmerkingen

QueueLength is de diepte van de kernel-aanvraagwachtrij (HttpServerQueueLengthProperty); wanneer vol, antwoordt http.sys met 503 Service Unavailable zonder gebruikersmodus te betrekken — verhoog dit om herverbindingsbursts op te vangen (tot 65535). SkipIOCPOnSuccess schakelt FILE_SKIP_COMPLETION_PORT_ON_SUCCESS in op de aanvraagwachtrij zodat synchrone successen inline worden verzonden zonder een IOCP-pakket (genegeerd op Windows XP). OperatingMode kiest tussen ompClassic (enkele acceptorthread + PostQueuedCompletionStatus, historisch gedrag) en ompHighPerf (Microsoft's MSDN HP-patroon: geen acceptor, ThreadPoolSize x HighPerfAcceptsPerWorker vooraf geplaatste async-ontvangsten op de wachtrij-gebonden IOCP); wijzig alleen voor activering. HighPerfAcceptsPerWorker (standaard 4) vergroot het vooraf geplaatste ontvangstvenster voor hoge gelijktijdigheidsbelasting — elke vooraf geplaatste ontvangst houdt een buffer van ReadBufferSize vast totdat deze is voltooid. Zie de handleiding HTTPAPI FineTune voor een volledige bespreking.

Voorbeeld


oServer = new TsgcWebSocketServer_HTTPAPI(NULL);
oServer->Host = "0.0.0.0";
oServer->Port = 8080;
oServer->FineTune->QueueLength = 10000;
oServer->FineTune->OperatingMode = ompHighPerf;
oServer->FineTune->HighPerfAcceptsPerWorker = 8;
oServer->FineTune->SkipIOCPOnSuccess = true;
oServer->Active = true;

Terug naar Properties