https://github.com/dmaicher/scala-http-server
Small just for fun project
https://github.com/dmaicher/scala-http-server
Last synced: 9 months ago
JSON representation
Small just for fun project
- Host: GitHub
- URL: https://github.com/dmaicher/scala-http-server
- Owner: dmaicher
- Created: 2015-02-20T22:06:32.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2015-07-11T16:19:36.000Z (over 10 years ago)
- Last Synced: 2025-02-14T04:46:57.812Z (11 months ago)
- Language: Scala
- Size: 305 KB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# scala-http-server
Small just for fun project to dig deeper into the HTTP 1.1 and fast-cgi protocols.
What is working?
- [x] multithreaded processing of incoming requests
- [x] registry with different handlers (transform request to response)
- [x] simple request matching (based on location or host etc.)
- [x] Handler to server static files from disk
- [x] simple registry to set correct content-type for static files based on extension
- [x] FastCgiHandler to proxy requests via fast-cgi protocol (tested with php-fpm)
- [ ] keep-alive for connections to fast-cgi proxy
- [x] chunked transport encoding
- [x] gzip content encoding
- [x] support for HTTP 1.1 keep-alive
- [ ] maybe introduce some kind of URL rewriting like apache and nginx offer?
- [ ] support for more conditional GET requests (currently only If-Modified-Since for 304 working)
- [ ] more tests
So far it looks like the performance is not too bad in comparison with apache2 or nginx for example. Maybe at some point I will put together some benchmarks.