It's the distributed version control (and more) used by SQLite. Most people have no idea about how cool the SQLite ecosystem is, and how it's used even on avionics!
Althttpd: Simple webserver in a single C file
91–100 of 345 posts
Re: Althttpd: Simple webserver in a single C file
#92Here is the actual single C-code file: https://sqlite.org/althttpd/file?name=althttpd.c Something I absolutely love about text based protocols such as HTTP/1 is how easy you can implement it in any virtually programming language. Sure, the implementation is not top-of-the-notch, but it just damned works, it is portable, it is understandable by humans. That's something what's got lost with HTTP/2 and HTTP/3, respectiv…
Binary protocols aren't (or at least don't have to be) any more difficult and frequently are even easier to implement. Text protocols have difficult problems like escaping or detecting the end of particular field that are frequent source of mistakes. The issue is that many (especially scripting) languages treat binary data as second class. The only real issue is that inspecting the binary message visually is little b…
Re: Althttpd: Simple webserver in a single C file
#93Earlier quoted context omitted.
> [Althttpd ...] has run the https://sqlite.org/ website since 2004 I don't know what the landscape was like in 2004 really, but probably at least an order of magnitude less than today's bazillion (whatever that would be!).
I don't think Nginx was out then, so I was using Apache HTTPD. Maybe Dwayne considered that too heavy for what he needed to serve up.
Re: Althttpd: Simple webserver in a single C file
#94Earlier quoted context omitted.
HTTP/1 simplicity comes not from text nature, but from it's clear concept and limited functionality. At core, it's just request-reply + key-value metadata. Whenever it's text, or binary, it does not matter much. But writing HTTP/2 frame types in letters would not make them any easier to understand.
HTTP allows a TimedOut response to be sent by a server to request you haven't yet sent. So it's not strictly request/reply.
While '408 Request Timeout' is somewhat dubious fig leaf over TCP RST
Re: Althttpd: Simple webserver in a single C file
#95Earlier quoted context omitted.
Apache's thread-per-connection model used to run basically the entire internet until nginx came along and demonstrated 10k simultaneous connections on a single server. If you only have around 100 concurrent confections, a separate thread per connection is entirely feasible. A whole new process is probably fine on Linux, but e.g. Windows takes pretty long to spawn a process
If you have 100 concurrent confections you're probably baking cookies.
Re: Althttpd: Simple webserver in a single C file
#96Althttpd is less complex than other HTTPDs because it doesn't support encryption by itself and instead recommends to use stunnel4.
Re: Althttpd: Simple webserver in a single C file
#97Re: Althttpd: Simple webserver in a single C file
#98Re: Althttpd: Simple webserver in a single C file
#99I'd be putting this in 1000 layers of sandboxing since its a C program with network access.
Re: Althttpd: Simple webserver in a single C file
#100Take a look at Fossil too: https://www.fossil-scm.org/ It's the distributed version control (and more) used by SQLite. Most people have no idea about how cool the SQLite ecosystem is, and how it's used even on avionics!
No, having a commit "fix typo" in the main branch's history is not at all useful and won't ever be. It's noise.
In a work setting it's much better to reduce noise.