An architecture of a web application can be as simple as one server with a LAMP stack, or something as complex as hundreds of machines running clusters of different stacks. I came across this question on quora a few days ago – What does a web application architecture include? The OP elaborated saying that he has a few keywords in his head, but has a hard time placing them in the big picture. At first I thought to myself,
“man, this guy must be joking… that’s like asking what components go into a space shuttle – there’s tons of stuff!”
The next thought quickly followed:
“No one is going to answer this guy in enough details”.
And that’s when I decide to dedicate ~15-20 minutes to write up a lengthy answer, that hopefully, will satisfy the OP and give him a better understanding of the terms flying around. One of the reasons I decided to put the effort into as full of answer as I could, is because this isn’t the first time I come across these types of questions. Web architecture and web technologies can be a very confusing topic – especially if you’ve read a tag cloud of buzz words.. things don’t always add up in your head. I shared my answer with my good friend Tom Goren who suggested I post this on the blog. So thanks to him, this is my answer: