Saetta Web Server
Stable release | |
---|---|
Development status | Active |
Written in | C |
Operating system | Linux |
Type | Web server |
Website | Izysoftware.com |
Saetta Web Server is a web server with a strong focus on high concurrency, performance and low memory usage.
Overview
Saetta Web Server can deploy dynamic HTTP content on a network using SAAPIs, server-side applications written in the C or C++ programming language, or in PHP with the embedded PHP module for PHP web pages, or the CGI handler for scripts.
Like Nginx, Saetta Web Server uses an asynchronous event-driven approach for handling requests, instead of the Apache HTTP Server model that defaults to a threaded or process-oriented approach. Event-driven approaches provide more predictable performance under high loads.
Basic HTTP features
- Ability to handle more than 10000 simultaneous connections with a low memory footprint.
- Handling of static files.
- TLS/SSL with SNI, via OpenSSL.
- Name- and IP-based virtual servers
- Reload configuration on fly
- IPv4 and IPv6
- Asynchronous I/O
- Framework via SAAPIs. Includes APIs for the generation of HTML documents, management of the GET/POST/HEAD HTTP methods, handling of uploaded files. SAAPIs are supported as global filters for virtual directories, single filters and handlers.
- CGI support
- Web page access authentication
- URL rewriting
- Custom logging
- Custom error pages
- Buffered outputs
- Minicache
- Compressed cache
- HTTP Keepalive
- HTTP pipelining
- HTTP gzip compression
- PHP web pages
SAAPI
SAAPI applications can be written using any language that allows the calling of standard C functions and that can be compiled into a shared object (for example the C, C++ and assembly programming languages).
SAAPI Extensions are true applications that run in the address space of Saetta Web Server. They have access to all of the functionality provided by the web server. These extensions are implemented as shared objects that are loaded into the web server process.
Clients can access SAAPI extensions in the same way they access a static HTML page. Server side certain file extensions, full directories and whole web sites can be mapped to be handled by a SAAPI extension.
SAAPIs can be used to generate dynamic content and to serve many concurrent clients requiring little memory resources.