猫型エンジニアのブログ

プログラム/ネットワーク系の技術関連をまとめたページです 

WSGIのお勉強 その1

WSGIとは

Pythonのドキュメントからの抜粋です。

 Web Server Gateway Interface (WSGI) は、Web サーバソフトウェアと Python で記述された Web アプリケーションとの標準インターフェースです。標準インターフェースを持つことで、WSGI をサポートするアプリケーションを幾つもの異なる Web サーバで使うことが容易になります。

Web サーバとプログラミングフレームワークの作者だけが、WSGI デザインのあらゆる細部や特例などを知る必要があります。WSGI アプリケーションをインストールしたり、既存のフレームワークを使ったアプリケーションを記述するだけの皆さんは、全てについて理解する必要はありません。

 要するにWSGIはサーバとアプリケーションフレームワーク間のインタフェースの一種であり、WSGIに従っていれば、ソースコードの使い回しが効くということのようです。そして内部的な実装に関しては気にするなとのことです(笑)。

別のドキュメントでは、

 WSGIは、Webサーバのゲートウェイインタフェースです。
WebサーバとWebアプリケーション間のやりとりの手順や、あるリクエストに関して複数のWebアプリケーション間で合わさって処理をする手順を定めています。

 こちらのほうがやや記載が詳しく、WSGIを単なるインタフェースとしてではなく、ミドルウェアとしての側面も強調されています。