「押さえておきたいWeb知識」で検索お願いします!

[Web用語] レプリケーションとは? 分かりやすく解説します!

1.レプリケーションとは?

レプリケーションとは複数のサーバ間でお互いが持っているデータの複製を持ち合うことです。




2.解説

以下の図はレプリケーション機能を利用した際の構成例です。

複製元にマスターデータベースにデータを登録すると2台のスレーブデータベースにもデータが登録されます。

マスターデータベースでデータが削除された場合、スレーブデータベースのデータも削除されます。

レプリケーションを利用すると常に同じデータを保持するようになります。

レプリケーションを用いるとクライアントから同時に大量のアクセスが発生した場合、処理能力が向上します。

例えば、1つのデータベースが1秒間に10件のリクエストに応答する能力があったとします。

この時、1秒間に20件のアクセスが殺到してしまうと処理しきれなくなります。

レプリケーションによって2台のサーバにデータを複数しておけば、1秒間に20件のアクセスがあっても、1台が10件ずつリクエストをこなすように分散して処理させ、すべてのアクセスに応答できます。

データベース以外の用途でもレプリケーションは用いられます。

例えば、セッション情報をレプリケーションする機能も存在します。

複数のアプリケーションサーバで処理を分散している場合、セッション情報が片方のサーバだけに格納されてしまうと登録されている情報に差がでてしまいます。

そこでセッション情報もレプリケーションすることでどちらのサーバにリクエストしても同じ情報を閲覧できるようになります。

レプリケーションは負荷分散だけでなく、データ保全という面でもメリットがあります。

レプリケーションによって同じデータを保持しているサーバが存在すれば、データは失われず、サービスを止めずに済みます。

一方、デメリットも存在します。

データの登録、更新のたびに複数のサーバの情報更新が発生します。

そのため、頻繁にデータをレプリケーションすると負荷が高くなります。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です