サーバーのパフォーマンス、ネットワークの品質、コストのバランスをとることは、多くの開発者やサービス展開者にとって共通の課題です。高度に構成されたサーバーは高価になる傾向があり、CN2 GIAのような高品質のネットワーク回線を備えたサーバーの高コストは、予算が限られている多くのプロジェクトにとっては法外なものです。
この記事では、フロントエンドのリバースプロキシとして最適化されたルートを持つサーバーを使用し、大帯域幅、高構成、しかし通常のビジネスサーバーのネットワーク回線のバックエンドを高速化することに特化した、費用対効果の高いアーキテクチャソリューションを紹介する。この戦略の組み合わせは、高価な「オールインワン」サーバーに近いアクセス体験を、より低コストで実現するように設計されている。
🚀 ネットワーク配線:通常の配線と最適化された配線の違い
🐢 レギュラーラインVPS
ほとんどの標準的な仮想プライベートサーバー(VPS)は、Telecom 163、Unicom 4837、またはMobile CMIなどのキャリアの通常のバックボーンネットワークに接続されており、これらのネットワークは膨大な量の公衆インターネットトラフィックを運び、その国際アウトレットや地方間ノードは夜間などのピーク時に混雑しやすく、その結果、アクセス遅延やパケット損失率が高くなります。

もちろん、通常回線のVPSの主な利点は、その費用対効果にあります。高価な専用回線のコストをかけずに、ユーザーはより高いCPU、RAM、ストレージ構成のマシンを低価格で手に入れることができます。
🚀 最適化されたルートVPS
最適化された回線は、Telecom CN2 GIA、Unicom 9929、Mobile CMIN2などの通信事業者が提供するブティック・ネットワークを使用します。このブティック・ネットワークは、公共バックボーンの混雑を避けるため、より多くの専用帯域幅でより優先度の高い国際接続を提供するため、しばしば「ブティック」と表現されます。その結果、ネットワークのピーク時間帯であっても、遅延と安定性は通常の回線よりはるかに優れています。

この優れた性能の代償は高く、その結果、最適化されたVPSは、同じ構成の通常のVPSの数倍の価格となっています。また、コストを抑えるために、市場に出回っている最適化された回線製品のほとんどは、高度な構成になっていません。
💡 アーキテクチャの説明:リバース・プロキシが加速と利益を達成する方法
このソリューションの理屈は簡単で、パフォーマンスとコストのバランスを取るために、両方のサーバーの利点を組み合わせるというものだ。
- バックエンド・ビジネス・サーバーWebサイト、データベース、アプリケーションなど、計算負荷の高いタスクを実行する場合は、十分な設定が施され、手頃な価格の汎用VPSをお選びください。
- フロントエンドプロキシサーバー優れたネットワーク品質で最適化された回線を使用するVPSは、ユーザーのリクエストのみを受信してバックエンドに転送し、バックエンドは最適化された回線で高速にユーザーにレスポンスを返します。

このようにして、エンドユーザーとのデータ交換はすべて、安定した高速の最適化された回線でルーティングされ、計算タスクは低コストのサーバーで処理される。
ネットワークの高速化に加え、このアーキテクチャはセキュリティ面でもさらなるメリットをもたらす。リバースプロキシはバックエンドのビジネスサーバーの実際のIPアドレスを隠すため、直接攻撃を効果的に回避できる。また、SSL/TLS証明書の一元管理、ウェブアプリケーションファイアウォール(WAF)の導入、ロードバランシングも容易になります。
📋 配備の実践: Nginx Proxy Managerを使ったリバースプロキシの構築
の直接コンフィギュレーションを含め、リバースプロキシ実装のための様々なツールが市場に出回っている。 Nginx もしかしたら Caddyまたは、関連する機能を統合したサーバー管理パネルを使用します。 1Panel.
このチュートリアルでは Nginx Proxy Manager これはデモンストレーションの一例です。の視覚化を提供するウェブ・インターフェースです。 Nginx コンフィギュレーション・プロセスを大幅に簡素化する管理ツールである。デプロイ環境は Debian 12 システムを例に挙げる。
ステップ1: DockerとDocker Composeのインストール
利用する Docker 配備 Nginx Proxy Manager 一番手っ取り早い方法だ。
第一に、以下のことが挙げられる。 Docker 公式スクリプトがインストールを完了する。
bash <(curl -fsSL https://get.docker.com)
次に Docker Compose複数のコンテナを管理するために使用される Docker アプリケーション
sudo curl -L "https://github.com/docker/compose/releases/download/v2.29.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
docker-compose --version
インストールに成功すると、バージョン番号が表示されます。

ステップ 2: ヤムル・ファイルの作成と設定
というのも Nginx Proxy Manager 専用の作業ディレクトリを作成する。
mkdir -p /opt/npm
cd /opt/npm
このディレクトリに compose.yaml ドキュメンテーション
nano /opt/npm/compose.yaml
そのファイルに以下を貼り付ける。必ず INITIAL_ADMIN_EMAIL 歌で応える INITIAL_ADMIN_PASSWORD の値で、これが初回ログイン時の認証情報として使用されます。
services:
nginx-proxy-manager:
container_name: nginx-proxy-manager
image: chishin/nginx-proxy-manager-zh:latest # 此为汉化版镜像,官方版为 jc21/nginx-proxy-manager:latest
restart: always
ports:
- '81:81' # Web管理界面的访问端口,可按需修改
- '80:80' # HTTP 端口
- '443:443' # HTTPS 端口
environment:
INITIAL_ADMIN_EMAIL: my@example.com # 登录邮箱账号
INITIAL_ADMIN_PASSWORD: mypassword1 # 登录密码
volumes:
- ./data:/data
- ./etc/letsencrypt:/etc/letsencrypt

保存してエディタを終了します。
🏎️ ステップ3:コンテナの起動
ある /opt/npm ディレクトリで、以下のコマンドを実行してサービスを開始する。
docker compose up -d

コンテナ起動後、ブラウザでアクセスする。 http://<代理服务器IP>:81 開けられる Nginx Proxy Manager ログイン画面の

ステップ 4: リバースプロキシルールの設定
このステップに進む前に、プロキシされるドメイン名がこの最適化された回線VPSのIPアドレスに解決されていることを確認してください。
ログインしたら、"Hosts" -> "Proxy Hosts "に移動し、"Add Proxy Host "をクリックする。


ポップアップウィンドウに関連情報を入力してください:
- ドメイン名アクセスを加速したいドメイン名を記入してください。
- プログラム記入
httpもしかしたらhttpsバックエンドサーバーがSSLで設定されているかどうかにもよりますが、デフォルトの設定はSSLです。 - 転送ホスト名/IPバックエンドビジネスサーバーのIPアドレスを入力します。
- 転送ポートバックエンドのウェブサービスのポートを入力します(通常は80)。

次に、"SSL "タブに切り替え、"Request a new SSL Certificate "を選択し、"Force SSL "と "HTTP/2 Support "オプションにチェックを入れ、保存します。と「HTTP/2サポート」オプションにチェックを入れ、保存します。Nginx Proxy Manager は自動的に Let's Encrypt SSL証明書の申請と設定

設定が完了すると、プロキシルールは直ちに有効になる。

お客様のドメイン名でウェブサイトにアクセスし、最適化されたルートによるスピードアップを体験してください。
📊 効果の比較と分析
加速効果を定量化するため、夕方のラッシュアワー(23:30)に一連の比較テストを実施した。テスト環境は以下の通り:
- ローカルネットワーク広東電信100Mbpsブロードバンド。
- ソース・ステーション・サービスを含む3MBのラージサイズのイメージでデプロイされています。
Haloブログ
シナリオ1:ソースサイトへの直接アクセス

ページ本体は2.33秒でロードされたが、画像リソースの完全ロードには10.35秒かかった。これは、ピーク時の一般国際回線のボトルネックを完全に露呈している。
シナリオ2:最適化された回線経由のリバースプロキシ(キャッシュは有効にしていない)

ページのロード時間は1.76秒に、画像のロード時間は7.54秒に短縮された。キャッシュがなくても、データの回線転送を最適化するだけで、ユーザー・エクスペリエンスは大幅に改善された。
シナリオ3: 最適化回線経由のリバースプロキシ (キャッシュをオン)

ページは0.756秒で開き、画像は1.23秒で読み込みを終える。パフォーマンスの向上は非常に大きい。これは、リバースプロキシサーバーが画像などの静的リソースをキャッシュし、ユーザーが再度リクエストすると、プロキシサーバーが遠くのソースから取得することなく、キャッシュされたコピーを直接返すため、ミリ秒単位のレスポンスが得られるからです。
他のパネルのリバースプロキシ設定
すでにパゴダパネルを使っている人や 1Panel のようなツールのユーザにとっても、リバースプロキシは簡単です。これらのパネルは通常、サイトまたはアプリケーション管理にリバースプロキシ機能を組み込み、より詳細なキャッシュポリシーとカスタムルール設定を提供します。
パゴダ・パネルの例。

1パネルの例。

コンテナデータのバックアップとリカバリ
に基づいている。 Docker デプロイの利点のひとつは、移行が容易なことだ。バックアップ Nginx Proxy Manager 設定に必要なのは /opt/npm カタログを全部詰め込めばいい。

新しいサーバーにリストアする場合は、ディレクトリを解凍して再度 docker compose up -d コマンドですべてのサービスと設定をリストアする。
多くのクラウドサービスプロバイダーは、ホストのスナップショットや自動バックアップも提供しており、頻繁な設定変更を必要としないリバースプロキシサービスにとっては、より手間のかからないディザスタリカバリソリューションとなっている。




































