In-kernel web server
An in-kernel web server is an unlimited HTTP server that runs in kernel space or equivalent. It is also called "accelerator".
Benefits
- Performance. The path taken by data from disk to network. Proper asynchronous zero-copy interfaces would make this available from user-space.
- Scalability with respect to number of simultaneous clients. Event notification of comparable scalability seems unlikely in user-space1.
Drawbacks
- Security: Kernel processes run with unlimited privileges.
- Portability. Every kernel needs a specific implementation route.
- Reliability. Failure in the webserver may crash the OS.
Implementations
- illumos/Solaris: NCAkmod aka Network Cache and Accelerator (NCA) kernel module
- HP-UX: NSAhttp
- Linux: TUX
- Mesibo In-kernel real-time messaging server
- Windows NT: http.sys (part of IIS)
- SPIN: http
- OpenVMS: WASD.trap
gollark: I would run a Minecraft server, but my internet connection isn't fast enough and it uses way too much RAM.
gollark: Massively overkill for it, but it runs with a bunch of other stuff which also doesn't utilize the server much.
gollark: Which is a repurposed desktop.
gollark: It's on one of my "servers".
gollark: The old version of it was actually written in Rust, but I'm not very good at that so I rewrote it.
See also
References
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.