Windows サーバー管理
IIS: Windows Web サーバーを真剣に考える
IIS は、Windows Server に組み込まれた Web サーバーです。プロセスの分離とリサイクル用のアプリケーション プール、認証と URL 書き換え用のモジュール、および Microsoft スタック (ASP.NET、ADFS 対応フロントエンド、ARR クラス リバース プロキシ) との統合です。これは、不器用な Apache の代替品という固定概念よりも価値があります。その本当の制限は構造的なものであり、その制限がどこに影響するかを知ることで管理可能になります。
要点
- アプリケーション プールは中心的な組織単位です。各プールは、独自の ID、リサイクル設定、およびパイプライン モードを持つ w3wp プロセス境界です。標準的なサイジング方法では、近隣のプールをダウンさせることなくクラッシュ分離をリサイクルするため、アプリケーションごとに 1 つのプールが使用されます。
- リサイクルにはガバナンスが必要です。デフォルトの定期的なリサイクル (多くの場合 29 時間) はリークをマスクするために存在しますが、原因不明のセッション ドロップが発生します。デフォルトを受け入れるのではなく、リサイクル時間、AlwaysRunning プリロード、アイドル タイムアウトを意図的に調整します。
- モジュールには次の構成が含まれます: URL Rewrite、ARR (リバース プロキシ)、Windows/Forms 認証、および ACME モジュールを介した Let's Encrypt。 Apache の共通モジュールを IIS モジュールとミラーリングしますが、モジュールのスタックにより IIS ボックスが肥大化するため、メモリに注意してください。
- リバース プロキシの形状は正当です。1 つまたは複数の IIS Web ファームの前の ARR は、プロキシとしての nginx パターンを反映します。トラフィックのほとんどが静的であるか、大規模な API リバース プロキシである場合、nginx または専用 LB がコストとシンプルさの点で優れています。
- 構成は内部で XML です (applicationHost.config と web.config)。設定変換とシード データは CI を通じて正常に公開されますが、階層レベル間での設定の争いは現実的です。可能な限り真実の情報源を単一にしてください。
- パフォーマンスのショートカット: 出力キャッシュ (可能な場合はカーネル モード)、圧縮 (静的圧縮プレウォーミング)、WOFF/Brotli モジュール、および ARR キャッシュ ルール。 SSL/TLS 設定は Windows 暗号スイートのストーリー (レジストリまたは暗号化ポリシーを介した TLS 1.2/1.3) に従い、監査人の調査結果のほとんどはそこから得られます。
現場ノート
私たちが継承した IIS ボックスでは、アプリケーション プールがデフォルトの 29 時間で再利用されていました。これは、すべての顧客のログアウト チケットがカレンダーに属していることを意味していました。 AlwaysRunning を設定し、正直なチューニングを行うと、チケットが停止しました。クライアントは私たちがバグを見つけたと思ったようです。デフォルトが見つかりました。
よくある質問
IIS はハイブリッド スタックの nginx の背後に配置する必要がありますか?
一般的な検証済みのパターン: nginx は TLS を終了し、静的ファイルを提供し、動的リクエストを IIS アプリ プールにリバース プロキシし、エッジ効率と Microsoft アプリケーション統合を組み合わせます。余分な可動部品は同じダッシュボードから監視する必要があります。
.htaccess-class の柔軟な構成は利用できますか?
IIS は、ディレクトリ レベルで URL 書き換えルールと IP/セキュリティ制限セクションを備えた web.config を使用します。同等の動作は存在しますが、IIS 構成階層が異なるため、書き換えモジュールの構文を個別に学習する必要があります。
IIS アプリでランダムにログアウトする原因は何ですか?
通常、リサイクルは、スティッキー セッション/マシン キーの調整を行わずに、プロセス中のセッション状態またはスケールアウトされたファームと組み合わせて行われます。修正は構成 (セッション状態サーバーまたは AlwaysRunning) であり、謎の再起動ではありません。
全体的に Apache や nginx と比較するとどうですか?
アプリケーションが Windows 上の .NET である場合、IIS は一貫したオプションです。 Linux 資産およびエッジ/プロキシ ロールの場合、Web サーバーの比較によると、nginx または Apache が正直な選択です。
windows サーバー管理 に対するKinetikatechの支援
正直なところ、ほとんどのチームはまず自力で試してからご相談に来ます:近日提供予定: Windows Server の監視、パッチ適用、ブルート フォース保護、24 時間年中無休の同じ規律、ネイティブ ツール。 私たちのWindowsサーバー監視とサーバー管理サービスは、windows サーバー管理を苦い経験で学ぶ必要がないように存在します。セットアップ、監視、そして3時の驚きをすべてお任せください。