• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
WSGI / Rack / PSGI てなんぞ
 

WSGI / Rack / PSGI てなんぞ

on

  • 1,540 views

社内自グループでの勉強会で使用。 WSGI, Rack, PSGI を聞いたことのない人向けの紹介。

社内自グループでの勉強会で使用。 WSGI, Rack, PSGI を聞いたことのない人向けの紹介。

Statistics

Views

Total Views
1,540
Views on SlideShare
1,441
Embed Views
99

Actions

Likes
1
Downloads
0
Comments
0

2 Embeds 99

http://ktjtn.blogspot.jp 98
http://ktjtn.blogspot.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    WSGI / Rack / PSGI てなんぞ WSGI / Rack / PSGI てなんぞ Presentation Transcript

    • WSGI / Rack / PSGI てなんぞKatsuji Ishikawa <katsuji.ishikawa@gmail.com>
    • menu• Web アプリケーションの実行環境• WSGI について• Rack について• PSGI について• Hello World サンプル
    • Web アプリケーションの実行環境• 注: Python, Ruby, Perl における主なもの• CGI• FastCGI• SpeedyCGI (Perl)• mod_言語名 (python, ruby, perl)• mod_snake (Python)• WSGI / Rack / PSGI• ・・・などなど
    • WSGI• WSGI 以前• Python では色々な Web アプリケーションフレームワーク(以下 WAF )が作られていた• http://wiki.python.org/moin/WebFrameworks• WAF を選ぶ = 利用できる Web サーバが決まってしまう、またその逆も
    • WSGI• WAF <=> Web サーバをつなぐ共通のインタフェースを定義しよう!• これが WSGI (PEP 333)• http://www.python.org/dev/peps/pep-0333/• Python Web Server Gateway Interface
    • WSGI• WSGI 以降• WAF, Web サーバ共に WSGI に対応すればおk• 使いたいWAF, Web サーバが使える• WSGI 対応してれば他のサーバへ変更も容易• WSGI =「仕様」、wsgiref =「リファレンス実装」(Python 2.5 から標準添付)• http://docs.python.org/2/library/wsgiref.html
    • WSGIWebサーバ WAFDjangoTurboGearsPyramidFlaskBottleweb.pyApachenginxCherokeelighttpd
    • お断り• 前の図は http://gihyo.jp/dev/serial/01/perl-hackers-hub/000101 を真似ました
    • Rack• Ruby には WSGI 相当のものがなかった• 実行環境どうしよう• Mongrel ? FastCGI ? Passenger ?• 2007年ごろ: WSGI のようなのつくっちゃおう => Rack• Rack: a Ruby Webserver Interface• http://rack.github.io/• Rack =「仕様」&「実装」
    • PSGI• Perl にも WSGI / Rack 相当のものがなかった• 実行環境どうしよう• mod_perl ? fastcgi ? speedycgi ?• 2009年: WSGI / Rack のようなのつくっちゃおう => PSGI• PSGI/Plack• http://plackperl.org/• PSGI =「仕様」、Plack =「(リファレンス)実装」
    • 参考URL• WSGIとPythonでスマートなWebアプリケーション開発を 第1回 WSGIの概要• http://gihyo.jp/dev/feature/01/wsgi/0001?page=1• Ruby Freaks Lounge 第23回 Rackとは何か(1)Rackの生まれた背景• http://gihyo.jp/dev/serial/01/ruby/0023• Perl Hackers Hub 第1回 PSGI/Plack―フレームワークとサーバをつなぐエンジン (1)• http://gihyo.jp/dev/serial/01/perl-hackers-hub/000101
    • Hello World サンプル