nginxのロードバランシング機能

Nginxはいくつかの方法で負荷分散を行いますが、一般的な方法は2つあります。

  1. IPハッシュ方式のロードバランシング: これは、クライアントのIPアドレスを基準としてリクエストを異なるバックエンドサーバーに振り分ける方法です。これにより、同じクライアントIPアドレスからのリクエストが、常に同じバックエンドサーバーに振り分けられるため、セッションの一貫性を保つ必要があるアプリケーションシナリオでは役立ちます。設定例を次に示します。
http {
upstream backend {
ip_hash;
server backend1.example.com;
server backend2.example.com;
server backend3.example.com;
}
server {
listen 80;
location / {
proxy_pass http://backend;
}
}
}
  1. ラウンドロビン方式の負荷分散: nginxでは、リクエストはラウンドロビン方式でバックエンドサーバーに振り分けられます。バックエンドの各サーバーは順番にリクエストを受け取ります。この方式は、バックエンドサーバーの負荷が比較的均等な場合に適しています。構成例を以下に示します。
http {
upstream backend {
server backend1.example.com;
server backend2.example.com;
server backend3.example.com;
}
server {
listen 80;
location / {
proxy_pass http://backend;
}
}
}

nginxはクライアントのリクエストをバックエンドサーバーに分散させ、負荷分散を実現します。上記の例では、backend1.example.com、backend2.example.com、backend3.example.comがバックエンドサーバーのアドレスです。より多くのバックエンドサーバーを設定することもできます。

コメントを残す 0

Your email address will not be published. Required fields are marked *