nginxで同時実行接続数を制限するには
Nginxの同時接続数を制限するには、Nginxのlimit_connモジュールを使用します。以下に一般的な設定例を示します。
- Nginx設定ファイルに次のコードを追加することで、最大同時接続数を 100 に制限します。
http {
limit_conn_zone $binary_remote_addr zone=concurrent:10m;
server {
...
location / {
limit_conn concurrent 100;
...
}
}
}
limit_conn_zoneディレクティブは共有メモリ領域を定義するために使用され、limit_connディレクティブは同時接続数を制限するために使用されます。
- 特定の URL ごとに同時接続数を制限する: 異なる URL に対して異なる同時接続数制限を設定できます。例えば、ルートパスを 50 の同時接続に制限し、/api パスを 20 の同時接続に制限します。
http {
limit_conn_zone $binary_remote_addr zone=concurrent:10m;
server {
...
location / {
limit_conn concurrent 50;
...
}
location /api {
limit_conn concurrent 20;
...
}
}
}
Nginxでは上記の設定により、URLにより同時接続数を制限します。
なお、上記サンプルは limit_conn モジュールで同時接続数を制限する方法の例示として示したものであり、実際の運用においては、ニーズやシステムの負荷状況を考慮し、適正な調整・設定を行ってください。