SocksvrQ is a high performance COM DLL designed exclusively for
the purpose of creating high performance network server applications on Windows
NT/2000/XP and later using Winsock sockets. As part of this design goal, SocksvrQ
was built to scale multiple processors, and to take advantage of Window NT (and
later) specific performance features such as I/O Completion Ports, configurable
multi-threading, memory and socket pooling and pre-allocation. In designing the
component to this end, it includes many features that help acheive this, while
still providing a simple interface to interact with Winsock.
features that SocksvrQ offers:
Simplified access to Winsock without sacrificing performance, functionality,
or reliability
Number of connections limited only by machines resources
Support for multi-homed machines (multiple IP addresses)
Support for multiple aliases
Component designed specifically for building high bandwidth network applications:
built around the I/O completion port model
Support for configuring the number of threads in the thread pool
Allows access to high performance OS features of NT/2000 facilitating the sending
of a file with one line of code while using the absolute minimum required system
resources (file is sent from OS systems internal file cache)
Multi-threaded sending, receiving, and connecting ensures the highest levels
of efficiency
Configurable buffers for receiving data
Asynchronous or synchronous connects, both with the ability to set a timout
value
Ability to scale across multiple processors
Access to all Winsock supported socket options to change Winsock headers for
connection customization
Utilizes memory and socket pooling in order to reduce overhead for high-bandwidth
servers