- Single executable with no unusual dependencies
- Cross platform (It'd be Windows first if I had VC installed on this laptop)
- Static assets
- Replace apache (jokes)
Run lpw directly from where you want to serve the content
Oh why not let's thread this thing like crazy. Single process. Requests will get pushed into a queue and worker threads will pop them and process them. Single lock on that. The main thread will be responsible for the actual sockets but that could change.
main.cpp: Entry point, main thread? worker.cpp: Process requests here! connection.cpp: There will probably be a big god class here. threadpool.cpp: It could happen, reserve the name for now requestpresenter.cpp: This is a class we can hand junk from a HTTP request and get back a usuable object
Socket - interface UnixSocketImpl