Web App Components

How Servers, Frameworks, and Databases Make Development Easier

Ethan Weiner
2 min readMay 30, 2022

I recently published a short video series on the HTTP request/response cycle, taking a detailed look at the various forms an HTTP message takes during its journey across the Internet and the stops that HTTP message takes.

But once an HTTP request arrives at the “server” (a term that’s quite ambiguous in itself), what sort of processing occurs? How is the response formed? It would be a hassle for the developer to do all this work themselves: what tools do developers use to make development easier?

If you seek to become a developer who doesn’t just use the tools commonplace to web app development — but understands and even builds them — then my next video might serve as a helpful introduction to this more infrastructure-centric realm of software engineering:

This video presents a higher-level mental model for understanding web app components and their interactions. Along the way, we’ll review concrete examples of the utilities serviced by each component. If you’d like to watch my networking-specific videos about the transmission of requests and responses (a precondition for networked web apps to work in the first place), the links are below:

I would like to thank Ryan DeJonghe for having a discussion with me on Ruby web server architecture that inspired me to create this video.

Aside from centering my video around many of the concepts discussed at Launch School, I borrowed many ideas from the following sources:

--

--

Ethan Weiner

Full stack software engineer - interested in learning, web development, and psychology