サーバー
サーバーとは、クライアントに対してサービスを提供するコンピューターです。
webサーバーやDBサーバーなど、種類がたくさんありますが、
実態はどれも「ただのコンピューター」で、役割によって呼び方が違うだけです。
ここでいうクライアントとは、ユーザーのみを指しているのではなく、
「リクエストを送った側」をクライアントと呼んでいます。
例えばAPサーバーから見たクライアントは、
「動的コンテンツ送って!」と言っているwebサーバーです。
Webサーバー
「Webサーバー」とは、静的コンテンツのみをリクエストとしてブラウザに返すサーバーです。
動的コンテンツはAPサーバーにリクエストを送ります。
「静的コンテンツ」とは、リクエストのたびに内容が変更されないファイルのことです。
例として、表示するものが定まっているCSSや、画像ファイルなどがあります。
最初に、クライアントからのリクエストすべてがWebサーバに送られます。
APサーバー(アプリケーションサーバー)
「APサーバー」は、動的コンテンツを生成し、処理結果をWebサーバーに返すという役割のサーバーです。
具体的には、APサーバーが、APサーバ内に設置されているアプリケーション本体にリクエスト処理の指令を出します。
アプリケーション本体が処理を完了すると、APサーバーはその処理結果をレスポンスとしてWebサーバーに返します。
「動的コンテンツ」とは、リクエストのたびに内容が変更されるファイルのことです。
送られてくるリクエスト毎にデータベースから検索条件に該当するデータ取得し、
表示する役割を果たしています。
DBサーバー(データベースサーバー)
DBサーバーとはアプリケーション上のデータを保存したり、
取り出してきてブラウザに表示したりするためのサーバーです。
APサーバーから送られてくるリクエストに従い、
その処理の結果をAPサーバーに返します。
APサーバーから送られてくるリクエストは、いわゆるCRUDの操作内容です。