0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Webサーバーとアプリケーションサーバーについて

Last updated at Posted at 2020-12-22

#はじめに

転職活動用のポートフォリオを作成中です。今回AWSを利用したデプロイを行いました。そこで「Webサーバー」と「アプリケーションサーバー」という概念が登場したため、違いや概要などを備忘録及び復習のため記事を投稿します。

#そもそもサーバーとは??

サーバーって何?と聞かれて、詰まってしまったので今回は こちらの記事を参考にさせていただきました。

👉「ユーザーのリクエスト(要求)を受け取り、正しいレスポンス(結果)を返す」という役割。「ユーザーがリクエストとして、URLをサーバーに送り、サーバーはレスポンスとしてビューページのファイルをユーザーに返す」イメージ。

上記に掲載している記事では「レストランのウェイター」というイメージで例えられていました。なるほど。。。

また、サーバーの中身は、ハードウェア・OS・ミドルウェア・アプリケーションで構成されており、今回のテーマである、Webサーバーとアプリケーションサーバーは「ミドルウェア」に位置するそうです。

それでは本題に入ります。

#Webサーバーとは

👉静的コンテンツ(リクエストの度に内容が変更されないファイル(画像・文章など)のこと)のみをリクエストとしてクライアントに返す役割。
ここで言う「クライアント」とは、サイトを閲覧するブラウザのことを示します。Nginxなど

#アプリケーションサーバーとは

👉動的コンテンツ(リクエストの度に内容が変更されるファイルのこと)を生成し、処理結果をWebサーバーに返すという役割を果たします。具体的にはアプリケーションサーバーが、アプリケーションサーバー内に設置されているアプリケーション本体にリクエストの指令を出します。アプリケーション本体が処理を完了すると、アプリケーションサーバーはその処理結果をレスポンスとしてWebサーバーに返します。Unicornなど

#処理の流れ

上記で記載した処理の流れを記述すると、
①クライアントからのリクエスト全てが、まずWebサーバーに送られる
②Webサーバーが、「Webサーバー内で処理することができる」と判断すれば、ブラウザにレスポンスを返す。
※Webサーバー内で処理できるものとは、データベースを介さず、静的コンテンツのみをリクエストとして返却するもの。
③「Webサーバー内で処理することができない」と判断されれば、処理をアプリケーションサーバーに依頼し、アプリケーションサーバー内で処理する。
④アプリケーションサーバーでの処理結果をWebサーバーに返す。
⑤Webサーバーはアプリケーションサーバーから帰ってくる処理をブラウザにレスポンスとして返す。

と言う流れになると思います。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?