A modular, multithreaded webapplicationserver written from scratch for C++
Version: 1.6.99Tntnet is a modular, multithreaded webapplicationserver written from scratch for C++.
Operating System: Linux
To create webapplications Tntnet has a template-language called ecpp similar to php, jsp or mason, where you can embed c++-code inside a html-page to generate active content.
The ecpp-files are precompiled to c++-classes called components and compiled and linked into a shared library. This process is done at compiletime. The webserver Tntnet needs only the compiled componentlibrary.
Because the webapplications are compiled into native code, they are very fast and compact.
Components can call other components. So you can create buildingblocks of html-parts and call them in other pages like subprocesses.
Requests are parsed by tntnet and the request-information is easily accessible to the components. It supports GET and POST-parameters and Mime-multipart-requests for file-upload.
The templatelanguage has also support for internationalized applications. You can easily create webapplications for different languages.
Other features are: cookies, HTTP-upload, automatic request-parameter parsing and conversion, automatic sessionmanagement, scoped variables (application, request and session), internationalisation, keep-alive.
Logging is done through cxxtools, which provides a unique API for log4cpp, log4cxx or simple logging to files or console.
Tntnet is fully multithreaded and much work has been gone into making it scalable. It uses a dynamic pool of workerthreads, which answers requests from http-clients.
Ssl is supported via the openssl-library.