Standalone HTTP server for Linux and Windows that listens on raw sockets, with optional TLS support.
Remarks
TSocketHttpServer runs an event loop thread (epoll on Linux, WSAPoll on Windows) that accepts connections and assembles request heads, so slow clients never occupy a worker thread. Complete requests are dispatched synchronously on a worker thread pool, which grows on demand -- see "WorkerThreads" -- so handlers that block on a database or on another server do not queue up behind each other.
The public API mirrors THttpSysServer: register modules with AddModule, then call Start and Stop to control the server.
Configuration properties must be set before starting the server.
The server is functional on the Linux and Windows platforms. The class is declared on all platforms so its documentation is available everywhere, but creating an instance on any other platform raises an ESocketServerException.
On Windows, THttpSysServer remains the recommended choice for high-load production servers (it is kernel-mode and supports port sharing); the socket server is useful when administrative URL reservations are not an option or when identical behavior across Windows and Linux is desired.