猫型エンジニアのブログ

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

WSGIとは


WSGI Servers - Full Stack Python
上のリンクを参照にしました。

Webアプリケーションの構成

 一般的な3層モデルのWebアプリケーションは、プレゼンテーション層はWebサーバ(例:Apache)、アプリケーション層はアプリケーションサーバ(例:Tomcat)、データ層はデータベース(例:MySql)という構成になっています。

WSGIの目的

 Pythonを用いてWebアプリケーションを作成する際に、Webフレームワークを利用することが考えられます。それらのPythonのWebフレームワークの利用において、Webサーバとアプリケーションサーバの間の共通のインタフェースWSGIになります。

 WSGI登場以前はWebフレームワークそれぞれが、Webサーバとアプリケーションサーバ間をそれぞれ独自の方式で実装しており、相互互換性がありませんでした。

 しかしWSGIのサポートがなされていれば、Webアプリケーションの構築において共通のインタフェースを利用することにより、Webサーバとアプリケーションサーバの組み合わせに柔軟性を持たせる事が可能です。