Arachnida is a C++-based, embeddable web server designed for spiders in the taxonomic class.
The software boasts of a small networking framework written in C++ that sits atop OpenSSL. It allows you to handle new connections and incoming data seamlessly via a "new connection handler" and "data handler," respectively. One of the data handlers, the HTTPDataHandler class, parses any incoming HTTP request and converts it to a Request object accessible by the HTTPRequestHandler.
One excellent feature of Arachnida is its extensibility. Users can easily add different TCP and IP-based protocol support to the framework via additional handlers. Writing a handler is a straightforward process that allows developers to focus more on the required protocol than web connectivity issues.
Arachnida is not only easy to use but also performs optimally in terms of speed. It is designed to handle multiple simultaneous connections with ease, and the select call incurs minimal overhead between connections and the handler. What's more, the software is stable, keeping resource leaks at bay and ensuring exception and type safety.
Arachnida is feather-light, with a minimalist HTTP server only consuming 3.6 MB of memory when in full swing on Windows. The DLL framework itself weighs just about 136K, with 4K in data and 123K in code. The software is highly portable, as it is written in standard-compliant C++ using Boost, STL, Loki, and OpenSSL, allowing it to function seamlessly on different operating systems like Windows and Linux.
For the testers, the software comes with a robust test suite featuring both unit and regression tests. It tests several corner cases and reports failures if any occurs. The latest release (with session support to Damos, customized Scorpion contexts, urlencode and urldecode functions) exemplifies the company's commitment to staying relevant and up-to-date with its clients' ever-changing needs.
Version 1.5.00: N/A