1
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?

デプロイを通じて学習したサーバーの仕組み

Posted at

サーバーの仕組み

1. サーバーとは?

サーバーとは、ネットワークを介して他のコンピューター(クライアント)にサービスを提供するコンピューターです。
一般的に「サーバー」と呼ばれる場合、以下の2つの意味が含まれます。

  • 物理サーバー: 実際のハードウェアそのもの。
  • サーバーソフトウェア: サーバー上で動作するプログラム(例: Webサーバーやアプリケーションサーバー)。

サーバーは、ユーザーがいつでもアクセスできるよう24時間稼働するよう設計されています。


2. サーバーの種類と役割

サーバーはその役割によっていくつかの種類に分けられます。

  • 物理サーバー: 実際にデータセンターなどに設置されているハードウェア。
  • 仮想サーバー: 物理サーバーの上で仮想化技術を使って作られたサーバー環境。
  • Webサーバー: 静的なファイル(HTML, CSS, JavaScript, 画像など)を提供します。
    • 主なソフトウェア例: Apache, Nginx。
  • アプリケーションサーバー: プログラムを実行して動的なコンテンツを生成します。
    • 主なソフトウェア例: Puma、Unicorn。

3. Webサーバーとアプリケーションサーバーの違い

Webサーバー

  • 役割: 静的ファイルを提供し、ブラウザにそのまま表示されるコンテンツを返します。
  • 主な使用例: ウェブサイトのHTMLや画像、CSSを提供。
  • 代表的なソフトウェア: Nginx、Apache。

アプリケーションサーバー

  • 役割: データベースと連携してプログラムを実行し、動的なコンテンツを生成して返します。
  • 主な使用例: ユーザー認証や動的なデータ表示が必要なWebアプリケーション。
  • 代表的なソフトウェア: Puma、Unicorn(Rails用)。

4. 仮想サーバー(AWS EC2)の仕組み

AWSのEC2(Elastic Compute Cloud)は、仮想サーバーを簡単に利用できるクラウドサービスです。

仮想サーバーの特徴

  • 物理サーバーを仮想化し、複数の仮想サーバーを1台の物理サーバー上で運用。
  • 必要に応じてリソース(CPUやメモリ)を柔軟に増減可能。

メリット

  • 自分で物理サーバーを用意する必要がなく、コストを削減できる。
  • 必要なリソースをオンデマンドで利用でき、スケールアウトも容易。

5. デプロイの仕組み

デプロイとは、ローカル環境で作成したアプリケーションを本番サーバーに配置し、公開するプロセスです。

デプロイの流れ

  1. ローカル環境:

    • 開発したコードをGitで管理。
    • 必要な設定ファイル(例: CapistranoやDockerfile)を準備。
  2. リモートリポジトリの利用:

    • GitHubやGitLabのリモートリポジトリにコードをプッシュ。
    • 本番サーバーがリモートリポジトリからコードを取得。
  3. サーバーでのセットアップ:

    • 必要なライブラリやGemをインストール。
    • データベースのマイグレーションを実行。
  4. 本番サーバーの起動:

    • Webサーバー(Nginx)やアプリケーションサーバー(Puma)を起動してアプリケーションを公開。

6. サーバーの仕組みのまとめ

サーバーについて理解することは、デプロイやアプリケーション開発において重要です。

  • サーバーは物理または仮想の形で提供される。
  • Webサーバーとアプリケーションサーバーは役割が異なり、それぞれが連携して動作。
  • AWS EC2のような仮想サーバーは、柔軟でスケーラブルな開発環境を提供。
  • デプロイでは、ローカルのコードを本番サーバーに配置する仕組みを理解する必要がある。
1
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
1
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?