NaviServer
NaviServer is a high performance web server written in C and Tcl. It can be easily extended in either language to create web sites and services; there are over 35 modules available (including database integration or protocol support for UDP, SMTP, LDAP, DNS, COAP, etc.)
Original author(s) | NaviSoft |
---|---|
Developer(s) | Bernd Eidenschink, Ibrahim, Stephen Deasey, Gustaf Neumann, Vlad Seryakov, Zoran Vasiljevic |
Stable release | 4.99.29
/ 2 November 2023 |
Written in | C, Tcl |
Operating system | Cross-platform |
Type | Web server |
License | Mozilla Public License |
Website | Bitbucket Repository SourceForge |
The project is under active development, NaviServer is mostly written in C with a very well-commented source code, had more than 6,000 commits made by 35 contributors representing more than 100,000 lines of code. NaviServer is licensed under the terms of the Mozilla Public License (MPL).
Recent new features include:
- an internal watchdog for automatic server restarts
- server internals exposed in a command line mode
- thread shared arrays (atomic operations, dict support)
- built-in caching with cache transaction semantics (cache commit/rollback)
- hot code swapping (update code in the running system without server restart)
- asynchronous spooling of requests and replies
- delivery of static files optionally with gzip or brotli compression with automatic re-compression on updates
- selective logging with color highlighting (non-blocking)
- efficient built-in crypto support
- mass virtual hosting
- byte-range requests for streaming and resumption of downloads
- rich HTTPS support (server and client-side SNI, OCSP Stapling)
- built-in HTTP/HTTPS client support, with log-files
- built-in statistics (for mutex locks/rwlocks, cache, db-handles, ...)
- bandwidth management via multiple connection thread pools
- WebSocket and IPv6 support
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.