Enviar pesquisa
Carregar
PSGIへの誘い
•
4 gostaram
•
4,027 visualizações
azuma satoshi
Seguir
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 21
Baixar agora
Baixar para ler offline
Recomendados
いまどきのPHP開発現場 -2015年秋-
いまどきのPHP開発現場 -2015年秋-
Masashi Shinbara
コマンドラインからplistファイルを扱う
コマンドラインからplistファイルを扱う
Yusuke Kawakami
CMSテーマ「logical jp」について
CMSテーマ「logical jp」について
Seiko Kuchida
php-timecopを実戦投入してみた
php-timecopを実戦投入してみた
Yoshio Hanawa
PHPの拡張モジュールをGoで作る
PHPの拡張モジュールをGoで作る
Yoshio Hanawa
anyenv + phpenv + php-build が便利すぎる件
anyenv + phpenv + php-build が便利すぎる件
y-uti
Build 番号の自動更新スクリプトについて #cocoa_kansai
Build 番号の自動更新スクリプトについて #cocoa_kansai
Tomohiro Kumagai
第9回rest勉強会 ダウンロード・アップロード編
第9回rest勉強会 ダウンロード・アップロード編
ksimoji
Recomendados
いまどきのPHP開発現場 -2015年秋-
いまどきのPHP開発現場 -2015年秋-
Masashi Shinbara
コマンドラインからplistファイルを扱う
コマンドラインからplistファイルを扱う
Yusuke Kawakami
CMSテーマ「logical jp」について
CMSテーマ「logical jp」について
Seiko Kuchida
php-timecopを実戦投入してみた
php-timecopを実戦投入してみた
Yoshio Hanawa
PHPの拡張モジュールをGoで作る
PHPの拡張モジュールをGoで作る
Yoshio Hanawa
anyenv + phpenv + php-build が便利すぎる件
anyenv + phpenv + php-build が便利すぎる件
y-uti
Build 番号の自動更新スクリプトについて #cocoa_kansai
Build 番号の自動更新スクリプトについて #cocoa_kansai
Tomohiro Kumagai
第9回rest勉強会 ダウンロード・アップロード編
第9回rest勉強会 ダウンロード・アップロード編
ksimoji
Re: WebServer BenchMarking
Re: WebServer BenchMarking
Ryo Tomidokoro
Zend OPcacheの速さの秘密を探る
Zend OPcacheの速さの秘密を探る
Yoshio Hanawa
JIT for PHP を試した
JIT for PHP を試した
y-uti
php-buildがいかに便利かを力説する
php-buildがいかに便利かを力説する
Yoshio Hanawa
node-gypを使ったネイティブモジュールの作成
node-gypを使ったネイティブモジュールの作成
shigeki_ohtsu
Windows で PHP をビルドしてみた
Windows で PHP をビルドしてみた
y-uti
apachehereというPHPのBuiltin Serverっぽいやつをつくった
apachehereというPHPのBuiltin Serverっぽいやつをつくった
Junichi Ishida
WordPress on HHVM + Hack
WordPress on HHVM + Hack
Takayuki Miyauchi
PHPの今とこれから2015
PHPの今とこれから2015
Rui Hirokawa
VSCodeで始めるAzure Static Web Apps開発
VSCodeで始めるAzure Static Web Apps開発
Yuta Matsumura
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
Hisateru Tanaka
PHP カンファレンス福岡 参加報告
PHP カンファレンス福岡 参加報告
y-uti
Hashicorpツールズ
Hashicorpツールズ
Uchio Kondo
RFC: "var" Deprecation
RFC: "var" Deprecation
y-uti
Consul は 全自動オーケストレーションの 夢を見るか?
Consul は 全自動オーケストレーションの 夢を見るか?
Uchio Kondo
PHPエクステンションの開発tips
PHPエクステンションの開発tips
Yoshio Hanawa
PHP7の内部実装から学ぶ性能改善テクニック
PHP7の内部実装から学ぶ性能改善テクニック
Yoshio Hanawa
PHP7の拡張モジュール事情
PHP7の拡張モジュール事情
Yoshio Hanawa
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう
Toshimichi Suekane
Pinoco phptal-phpcon-kansai
Pinoco phptal-phpcon-kansai
Hisateru Tanaka
Movable Type のサステナビリティと今後の戦略について
Movable Type のサステナビリティと今後の戦略について
Six Apart KK
『How to build a High Performance PSGI/Plack Server』のその後と ISUCON3を受けての話題
『How to build a High Performance PSGI/Plack Server』のその後と ISUCON3を受けての話題
Masahiro Nagano
Mais conteúdo relacionado
Mais procurados
Re: WebServer BenchMarking
Re: WebServer BenchMarking
Ryo Tomidokoro
Zend OPcacheの速さの秘密を探る
Zend OPcacheの速さの秘密を探る
Yoshio Hanawa
JIT for PHP を試した
JIT for PHP を試した
y-uti
php-buildがいかに便利かを力説する
php-buildがいかに便利かを力説する
Yoshio Hanawa
node-gypを使ったネイティブモジュールの作成
node-gypを使ったネイティブモジュールの作成
shigeki_ohtsu
Windows で PHP をビルドしてみた
Windows で PHP をビルドしてみた
y-uti
apachehereというPHPのBuiltin Serverっぽいやつをつくった
apachehereというPHPのBuiltin Serverっぽいやつをつくった
Junichi Ishida
WordPress on HHVM + Hack
WordPress on HHVM + Hack
Takayuki Miyauchi
PHPの今とこれから2015
PHPの今とこれから2015
Rui Hirokawa
VSCodeで始めるAzure Static Web Apps開発
VSCodeで始めるAzure Static Web Apps開発
Yuta Matsumura
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
Hisateru Tanaka
PHP カンファレンス福岡 参加報告
PHP カンファレンス福岡 参加報告
y-uti
Hashicorpツールズ
Hashicorpツールズ
Uchio Kondo
RFC: "var" Deprecation
RFC: "var" Deprecation
y-uti
Consul は 全自動オーケストレーションの 夢を見るか?
Consul は 全自動オーケストレーションの 夢を見るか?
Uchio Kondo
PHPエクステンションの開発tips
PHPエクステンションの開発tips
Yoshio Hanawa
PHP7の内部実装から学ぶ性能改善テクニック
PHP7の内部実装から学ぶ性能改善テクニック
Yoshio Hanawa
PHP7の拡張モジュール事情
PHP7の拡張モジュール事情
Yoshio Hanawa
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう
Toshimichi Suekane
Pinoco phptal-phpcon-kansai
Pinoco phptal-phpcon-kansai
Hisateru Tanaka
Mais procurados
(20)
Re: WebServer BenchMarking
Re: WebServer BenchMarking
Zend OPcacheの速さの秘密を探る
Zend OPcacheの速さの秘密を探る
JIT for PHP を試した
JIT for PHP を試した
php-buildがいかに便利かを力説する
php-buildがいかに便利かを力説する
node-gypを使ったネイティブモジュールの作成
node-gypを使ったネイティブモジュールの作成
Windows で PHP をビルドしてみた
Windows で PHP をビルドしてみた
apachehereというPHPのBuiltin Serverっぽいやつをつくった
apachehereというPHPのBuiltin Serverっぽいやつをつくった
WordPress on HHVM + Hack
WordPress on HHVM + Hack
PHPの今とこれから2015
PHPの今とこれから2015
VSCodeで始めるAzure Static Web Apps開発
VSCodeで始めるAzure Static Web Apps開発
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
PHP カンファレンス福岡 参加報告
PHP カンファレンス福岡 参加報告
Hashicorpツールズ
Hashicorpツールズ
RFC: "var" Deprecation
RFC: "var" Deprecation
Consul は 全自動オーケストレーションの 夢を見るか?
Consul は 全自動オーケストレーションの 夢を見るか?
PHPエクステンションの開発tips
PHPエクステンションの開発tips
PHP7の内部実装から学ぶ性能改善テクニック
PHP7の内部実装から学ぶ性能改善テクニック
PHP7の拡張モジュール事情
PHP7の拡張モジュール事情
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう
Pinoco phptal-phpcon-kansai
Pinoco phptal-phpcon-kansai
Destaque
Movable Type のサステナビリティと今後の戦略について
Movable Type のサステナビリティと今後の戦略について
Six Apart KK
『How to build a High Performance PSGI/Plack Server』のその後と ISUCON3を受けての話題
『How to build a High Performance PSGI/Plack Server』のその後と ISUCON3を受けての話題
Masahiro Nagano
A jensen-shannon
A jensen-shannon
Unirio
Lectionline xiv domenica del t o 6 luglio
Lectionline xiv domenica del t o 6 luglio
Maike Loes
印刷に耐えられる品質のQRCodeをPerlで生成したよ! - Mishima.pm #1
印刷に耐えられる品質のQRCodeをPerlで生成したよ! - Mishima.pm #1
azuma satoshi
Monthly highlights
Monthly highlights
Bennett Gordon Cfa Cfp
[STP]비타500
[STP]비타500
hyunjung89
Anexo3 cómics eu
Anexo3 cómics eu
Katalogador
Kindergarten registration key points 2012 v_jan20
Kindergarten registration key points 2012 v_jan20
Ottawa-Carleton District School Board (OCDSB)
Triduo Mons. Giuseppe Fagnano_2° giorno
Triduo Mons. Giuseppe Fagnano_2° giorno
Maike Loes
Lectionline xxvii domenica del t o anno a_5 ottobre 2014
Lectionline xxvii domenica del t o anno a_5 ottobre 2014
Maike Loes
Sunshine Coast Library, 3rd place IFLA BibLibre Marketing award 2016
Sunshine Coast Library, 3rd place IFLA BibLibre Marketing award 2016
Bibliothèque publique d'information - Centre Pompidou
Continuous Delivery via Docker (in Chinese)
Continuous Delivery via Docker (in Chinese)
Yi Yang
Triduo Sr Angela Vallese_3 giorno eng
Triduo Sr Angela Vallese_3 giorno eng
Maike Loes
Los Hernandez at Making Believe
Los Hernandez at Making Believe
Evangelina Guerra
Global commercial opportunities derived from glyphosate industry
Global commercial opportunities derived from glyphosate industry
Martin lau
Kozma Szilárd: Az emberek az ítélkezői felületességükön keresztül tévesztik m...
Kozma Szilárd: Az emberek az ítélkezői felületességükön keresztül tévesztik m...
Violetta Joó
Scuola dante alighieri
Scuola dante alighieri
Annamara Montesi
Giornata Missionaria Mondiale 2013
Giornata Missionaria Mondiale 2013
Maike Loes
Farewell (Mae, batch 2011)
Farewell (Mae, batch 2011)
Deepshikha Gandhi
Destaque
(20)
Movable Type のサステナビリティと今後の戦略について
Movable Type のサステナビリティと今後の戦略について
『How to build a High Performance PSGI/Plack Server』のその後と ISUCON3を受けての話題
『How to build a High Performance PSGI/Plack Server』のその後と ISUCON3を受けての話題
A jensen-shannon
A jensen-shannon
Lectionline xiv domenica del t o 6 luglio
Lectionline xiv domenica del t o 6 luglio
印刷に耐えられる品質のQRCodeをPerlで生成したよ! - Mishima.pm #1
印刷に耐えられる品質のQRCodeをPerlで生成したよ! - Mishima.pm #1
Monthly highlights
Monthly highlights
[STP]비타500
[STP]비타500
Anexo3 cómics eu
Anexo3 cómics eu
Kindergarten registration key points 2012 v_jan20
Kindergarten registration key points 2012 v_jan20
Triduo Mons. Giuseppe Fagnano_2° giorno
Triduo Mons. Giuseppe Fagnano_2° giorno
Lectionline xxvii domenica del t o anno a_5 ottobre 2014
Lectionline xxvii domenica del t o anno a_5 ottobre 2014
Sunshine Coast Library, 3rd place IFLA BibLibre Marketing award 2016
Sunshine Coast Library, 3rd place IFLA BibLibre Marketing award 2016
Continuous Delivery via Docker (in Chinese)
Continuous Delivery via Docker (in Chinese)
Triduo Sr Angela Vallese_3 giorno eng
Triduo Sr Angela Vallese_3 giorno eng
Los Hernandez at Making Believe
Los Hernandez at Making Believe
Global commercial opportunities derived from glyphosate industry
Global commercial opportunities derived from glyphosate industry
Kozma Szilárd: Az emberek az ítélkezői felületességükön keresztül tévesztik m...
Kozma Szilárd: Az emberek az ítélkezői felületességükön keresztül tévesztik m...
Scuola dante alighieri
Scuola dante alighieri
Giornata Missionaria Mondiale 2013
Giornata Missionaria Mondiale 2013
Farewell (Mae, batch 2011)
Farewell (Mae, batch 2011)
Semelhante a PSGIへの誘い
WTM53 phpフレームワーク いまさらcodeigniter
WTM53 phpフレームワーク いまさらcodeigniter
Masanori Oobayashi
Start python with fastapi
Start python with fastapi
ku_taka
配布用Cacti running with cherokee
配布用Cacti running with cherokee
yut148atgmaildotcom
PHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 と
do_aki
Inside mobage platform
Inside mobage platform
Toru Yamaguchi
Php in ruby
Php in ruby
do_aki
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築
Hideharu MATSUFUJI
Niigata.pm #1
Niigata.pm #1
hayajo Imai
How to run P4 BMv2
How to run P4 BMv2
Kentaro Ebisawa
Clack meetup #1 lt
Clack meetup #1 lt
Atsushi Odagiri
php-src の歩き方
php-src の歩き方
do_aki
あなたの安心を高速に守る Container-based CI
あなたの安心を高速に守る Container-based CI
Wataru MIYAGUNI
WebAPIではじめるphp入門
WebAPIではじめるphp入門
Hiroaki Murayama
Apacheの展望とmod_perlの超絶技巧 #yapcasia
Apacheの展望とmod_perlの超絶技巧 #yapcasia
鉄次 尾形
Ansible quickstart
Ansible quickstart
Hideki Saito
Power shell で DSL
Power shell で DSL
urasandesu
PHP7を実際に動かしてみた@第96回PHP勉強会 #phpstudy
PHP7を実際に動かしてみた@第96回PHP勉強会 #phpstudy
Hikari Fukasawa
静的サイトどこにする?
静的サイトどこにする?
ogawatti
成長を加速する minne の技術基盤戦略
成長を加速する minne の技術基盤戦略
Hiroshi SHIBATA
NPAPIを使ったandroid標準ブラウザの拡張方法
NPAPIを使ったandroid標準ブラウザの拡張方法
Naruto TAKAHASHI
Semelhante a PSGIへの誘い
(20)
WTM53 phpフレームワーク いまさらcodeigniter
WTM53 phpフレームワーク いまさらcodeigniter
Start python with fastapi
Start python with fastapi
配布用Cacti running with cherokee
配布用Cacti running with cherokee
PHP と SAPI と ZendEngine3 と
PHP と SAPI と ZendEngine3 と
Inside mobage platform
Inside mobage platform
Php in ruby
Php in ruby
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築
Niigata.pm #1
Niigata.pm #1
How to run P4 BMv2
How to run P4 BMv2
Clack meetup #1 lt
Clack meetup #1 lt
php-src の歩き方
php-src の歩き方
あなたの安心を高速に守る Container-based CI
あなたの安心を高速に守る Container-based CI
WebAPIではじめるphp入門
WebAPIではじめるphp入門
Apacheの展望とmod_perlの超絶技巧 #yapcasia
Apacheの展望とmod_perlの超絶技巧 #yapcasia
Ansible quickstart
Ansible quickstart
Power shell で DSL
Power shell で DSL
PHP7を実際に動かしてみた@第96回PHP勉強会 #phpstudy
PHP7を実際に動かしてみた@第96回PHP勉強会 #phpstudy
静的サイトどこにする?
静的サイトどこにする?
成長を加速する minne の技術基盤戦略
成長を加速する minne の技術基盤戦略
NPAPIを使ったandroid標準ブラウザの拡張方法
NPAPIを使ったandroid標準ブラウザの拡張方法
Mais de azuma satoshi
finally (not finally)
finally (not finally)
azuma satoshi
時を駆けるINSERT.pptx
時を駆けるINSERT.pptx
azuma satoshi
できる!サーバレスアーキテクチャ
できる!サーバレスアーキテクチャ
azuma satoshi
L tthon
L tthon
azuma satoshi
Perlbeginnes 9 lt_ytnobody
Perlbeginnes 9 lt_ytnobody
azuma satoshi
Perlbeginnes 9 opening
Perlbeginnes 9 opening
azuma satoshi
Perlbeginners proposal
Perlbeginners proposal
azuma satoshi
Chibapm01 lt
Chibapm01 lt
azuma satoshi
入れ子構造を分解する
入れ子構造を分解する
azuma satoshi
YAPC::Asia 2012 CPANに恩返ししよう
YAPC::Asia 2012 CPANに恩返ししよう
azuma satoshi
ライブコーディング(?)で学ぶPerlオブジェクト指向
ライブコーディング(?)で学ぶPerlオブジェクト指向
azuma satoshi
Perlbeginnes 4 keynote
Perlbeginnes 4 keynote
azuma satoshi
Perl暦およそ10年(?)の僕がデータベースを使えるようになるまでの昔話
Perl暦およそ10年(?)の僕がデータベースを使えるようになるまでの昔話
azuma satoshi
Perlbeginners 3 opening talk
Perlbeginners 3 opening talk
azuma satoshi
Perlbeginnes 2 keynote
Perlbeginnes 2 keynote
azuma satoshi
Hachiojipm 14 LT
Hachiojipm 14 LT
azuma satoshi
Perl Beginners #1 keynote
Perl Beginners #1 keynote
azuma satoshi
大ざっぱにオブジェクト指向
大ざっぱにオブジェクト指向
azuma satoshi
Hachioji.pm #13 LT
Hachioji.pm #13 LT
azuma satoshi
Alluren of prototype-based OOP
Alluren of prototype-based OOP
azuma satoshi
Mais de azuma satoshi
(20)
finally (not finally)
finally (not finally)
時を駆けるINSERT.pptx
時を駆けるINSERT.pptx
できる!サーバレスアーキテクチャ
できる!サーバレスアーキテクチャ
L tthon
L tthon
Perlbeginnes 9 lt_ytnobody
Perlbeginnes 9 lt_ytnobody
Perlbeginnes 9 opening
Perlbeginnes 9 opening
Perlbeginners proposal
Perlbeginners proposal
Chibapm01 lt
Chibapm01 lt
入れ子構造を分解する
入れ子構造を分解する
YAPC::Asia 2012 CPANに恩返ししよう
YAPC::Asia 2012 CPANに恩返ししよう
ライブコーディング(?)で学ぶPerlオブジェクト指向
ライブコーディング(?)で学ぶPerlオブジェクト指向
Perlbeginnes 4 keynote
Perlbeginnes 4 keynote
Perl暦およそ10年(?)の僕がデータベースを使えるようになるまでの昔話
Perl暦およそ10年(?)の僕がデータベースを使えるようになるまでの昔話
Perlbeginners 3 opening talk
Perlbeginners 3 opening talk
Perlbeginnes 2 keynote
Perlbeginnes 2 keynote
Hachiojipm 14 LT
Hachiojipm 14 LT
Perl Beginners #1 keynote
Perl Beginners #1 keynote
大ざっぱにオブジェクト指向
大ざっぱにオブジェクト指向
Hachioji.pm #13 LT
Hachioji.pm #13 LT
Alluren of prototype-based OOP
Alluren of prototype-based OOP
Último
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
Toru Tamaki
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
Toru Tamaki
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
iPride Co., Ltd.
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Toru Tamaki
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
taisei2219
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Yuma Ohgami
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Hiroki Ichikura
Último
(9)
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
PSGIへの誘い
1.
PSGIへの誘い ~CGIと比較して利便性を実感~ Perl
Beginners #2 Lightning Talk @ytnobody
2.
対象とねらい これからCGIについて学ぼうとしている方 いまCGIについて学んでいる方に言いたい。 「ぜひPSGIを触ってみてくれ!」と。
3.
PSGIとは? ●
Webサーバレイヤを抽象化するための仕様。 ● http://d.hatena.ne.jp/keyword/PSGI ● Plack ● PerlでのPSGIリファレンス実装 ● 類似品(というか大体は兄貴分みたいなの) ● Ruby – Rack ● Python – WSGI
4.
よくわかんねえw
5.
要するにPSGIというのは
CGIと同じように webページを動的に生成する技術です
6.
シンプルなCGI #!/usr/bin/env perl use strict; ###
HTTPレスポンスヘッダ print “Content-type: text/htmlnn”; ### HTTPレスポンスボディ print <<EOF; <html> <body> <h1>Hello, world!</h1> </body> </html> EOF
7.
CGI.pmをつかってみる #!/usr/bin/env perl use strict; use
CGI; ### CGIインスタンス生成 my $cgi = CGI->new; ### HTTPレスポンスヘッダ print $cgi->header( -type => 'text/html' ); ### HTTPレスポンスボディ print <<EOF; <html> <body> <h1>Hello, world!</h1> </body> </html> EOF
8.
PSGIならこうなる ●
下記ファイルをapp.psgiとして保存。 use strict; my $body = <<EOF; <html> <body> <h1>Hello, world!</h1> </body> </html> EOF sub { [ 200, [ 'Content-Type' => 'text/html' ], [ $body ] ] };
9.
PSGI-appの基本 use strict; ←
shebang(#!/usr/bin/env perl)は無し。 my $body = <<EOF; <html> <body> <h1>Hello, world!</h1> </body> </html> EOF sub { [ 200, [ 'Content-Type' => 'text/html' ], [ $body ] ] };
10.
PSGI-appの基本 use strict; my $body
= <<EOF; <html> <body> <h1>Hello, world!</h1> </body> </html> EOF sub { [ 200, [ 'Content-Type' => 'text/html' ], [ $body ] ] };← PSGI-appは、コードリファレンス(sub {...})を返す。
11.
PSGI-appの基本 use strict; my $body
= <<EOF; <html> <body> <h1>Hello, world!</h1> </body> </html> EOF sub { [ 200, [ 'Content-Type' => 'text/html' ], [ $body ] ] ← コードリファレンスは、配列リファレンスを返す。 };
12.
PSGI-appの基本 use strict; my $body
= <<EOF; <html> <body> <h1>Hello, world!</h1> </body> </html> EOF sub { [ 200, ← レスポンスコード。 [ 'Content-Type' => 'text/html' ], ← HTTPレスポンスヘッダ [ $body ] ← HTTPボディ ] };
13.
CGIのデプロイ(?) ●
httpデーモン(Apacheとか)側での設定 ● 特定のパス以下にリクエストが来た場合にCGIを実行 する指定 ● 上記で指定されたパスに相当するディレクトリにプログ ラムを設置 ● プログラムに実行権限を与える(パーミッションの設定)
14.
PSGI-appのデプロイ ●
あらかじめサーバにPlackをインストールしておく ● cpanm Plack ● plackupコマンドでアプリケーションサーバを起動 ● plackup ./app.psgi
15.
デプロイの相違点 ●
app.psgiに実行権限を与える必要はない ● apacheなどのhttpデーモンを必要としない
16.
DEMO PSGI-appのライブコーディング
& デプロイ
17.
PSGIを導入できる条件 ●
SSHなどでシェルを実行できる環境であること – いわゆるレンタルwebスペースだと、この点はクリアできない ● プロセスを常駐させても怒られないこと – いわゆるレンタルwebスペースだと(ry ● (必須じゃないけど推奨)perlbrew+cpanmが使えること – いわゆるレン(ry
18.
オススメのデプロイ先 ●
VPS ● さくらVPS ● WebARENA ● などなど。。。 ● お手持ちのMac ● 自宅サーバ ● 各種LinuxやBSDなど ● PaaS ● DotCloud – 但しデプロイ方法が独特。慣れると楽。
19.
まとめ ●
PSGIは難しくない ● CGIより簡単 ● デプロイするにはそれなりの環境が必要。 ● CGIみたいにレンタルスペースじゃ動かせない ● VPS/自宅サーバ/MacBookあたりがあれば楽々。 ● 今から学習するなら、断然PSGI ● CGIについて学習するのがダメなんじゃなくて、先に PSGIを触っておいたほうが、動くものを手早く作れる。 ● PSGIならWAFも色々あるよ! ● まずは恐れずにPSGIを触ろうよ!
20.
さいごに
Twitterで #perl 付けて 「教えてください」っていうと、 意外と教えてくれる人がいるかもしれないので やってみるといいんじゃないでしょうか。
21.
ご清聴 ありがとうございました
Baixar agora