NaviServer
Original author(s) | NaviSoft |
---|---|
Developer(s) | Bernd Eidenschink, Ibrahim, Stephen Deasey, Gustaf Neumann, Vlad Seryakov, Zoran Vasiljevic |
Stable release | |
Written in | C, Tcl |
Operating system | Cross-platform |
Type | Web server |
License | Mozilla Public License |
Website | GitHub Repository SourceForge |
NaviServer[2][3] 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.)
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.[4] 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
History
NaviServer is based on AOLserver (version 4.10), AOL's open-source web server. The NaviServer project started as a fork of the AOLserver project in July 2005.[5] It is different by supporting multiple protocols, providing higher scalability through asynchronous I/O and aims to be less conservative with new feature development.
Historically NaviServer was the original name of the server, a closed-source product by a company called NaviSoft in the early 1990s.[6] It was bought by AOL in 1995, and released as open-source in 1999 as AOLserver after they released Mozilla. This friendly-fork takes the code back to its original name.
Large applications of NaviServer are the ArsDigita Community System and OpenACS in particular.
See also
External links
- NaviServer Home page
- NaviServer GitHub Repository
- NaviServer Bitbucket Repository
- NaviServer Documentation
References
- v
- t
- e
- AOLserver
- Caddy
- Caudium
- Cherokee
- GlassFish
- Gunicorn
- H2O
- Hiawatha
- iPlanet
- Jetty
- JEUS
- Jexus
- JOnAS
- Lighttpd
- LiteSpeed Web Server
- Mongoose
- Mongrel2
- Monkey
- NaviServer
- NetWeaver
- OpenResty
- Passenger
- Paste
- POCO
- Puma
- Resin
- Roxen
- thttpd
- Tomcat
- Tornado
- Traffic Server
- Twisted
- WebLogic
- WEBrick
- WebSphere
- WildFly
- Yaws
- Zope
- Boa
- CERN httpd
- Mongrel
- NCSA HTTPd
- Xitami
- Zeus