Enviar búsqueda
Cargar
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
•
37 recomendaciones
•
10,061 vistas
Hisateru Tanaka
Seguir
第21回関西PHP勉強会 発表スライド + ベンチマークデモ入れ込み
Leer menos
Leer más
Tecnología
Denunciar
Compartir
Denunciar
Compartir
1 de 30
Descargar ahora
Descargar para leer sin conexión
Recomendados
PHPにおけるI/O多重化とyield
PHPにおけるI/O多重化とyield
Yahoo!デベロッパーネットワーク
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
shinjiigarashi
うちではこうやっています UI構築のルールとPlaymakerを使った画面遷移
うちではこうやっています UI構築のルールとPlaymakerを使った画面遷移
まべ☆てっく運営
Hatena::Letの式年遷宮
Hatena::Letの式年遷宮
Takafumi ONAKA
PHP7ではなくHack/HHVMを選ぶ理由
PHP7ではなくHack/HHVMを選ぶ理由
Yuji Otani
ゲーム開発初心者の僕がUnity + WebSocketで何か作ってみた
ゲーム開発初心者の僕がUnity + WebSocketで何か作ってみた
Kohei Kadowaki
【Unite Tokyo 2018】さては非同期だなオメー!async/await完全に理解しよう
【Unite Tokyo 2018】さては非同期だなオメー!async/await完全に理解しよう
Unity Technologies Japan K.K.
【Unite 2018 Tokyo】そろそろ楽がしたい!新アセットバンドルワークフロー&リソースマネージャー詳細解説
【Unite 2018 Tokyo】そろそろ楽がしたい!新アセットバンドルワークフロー&リソースマネージャー詳細解説
Unity Technologies Japan K.K.
Recomendados
PHPにおけるI/O多重化とyield
PHPにおけるI/O多重化とyield
Yahoo!デベロッパーネットワーク
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
shinjiigarashi
うちではこうやっています UI構築のルールとPlaymakerを使った画面遷移
うちではこうやっています UI構築のルールとPlaymakerを使った画面遷移
まべ☆てっく運営
Hatena::Letの式年遷宮
Hatena::Letの式年遷宮
Takafumi ONAKA
PHP7ではなくHack/HHVMを選ぶ理由
PHP7ではなくHack/HHVMを選ぶ理由
Yuji Otani
ゲーム開発初心者の僕がUnity + WebSocketで何か作ってみた
ゲーム開発初心者の僕がUnity + WebSocketで何か作ってみた
Kohei Kadowaki
【Unite Tokyo 2018】さては非同期だなオメー!async/await完全に理解しよう
【Unite Tokyo 2018】さては非同期だなオメー!async/await完全に理解しよう
Unity Technologies Japan K.K.
【Unite 2018 Tokyo】そろそろ楽がしたい!新アセットバンドルワークフロー&リソースマネージャー詳細解説
【Unite 2018 Tokyo】そろそろ楽がしたい!新アセットバンドルワークフロー&リソースマネージャー詳細解説
Unity Technologies Japan K.K.
【Unite Tokyo 2019】今すぐ現場で覚えておきたい最適化技法 ~「ゲシュタルト・オーディン」開発における最適化事例~
【Unite Tokyo 2019】今すぐ現場で覚えておきたい最適化技法 ~「ゲシュタルト・オーディン」開発における最適化事例~
UnityTechnologiesJapan002
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
Yoshifumi Kawai
Deep Dive async/await in Unity with UniTask(UniRx.Async)
Deep Dive async/await in Unity with UniTask(UniRx.Async)
Yoshifumi Kawai
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
Yoshio Hanawa
Reactive Programming by UniRx for Asynchronous & Event Processing
Reactive Programming by UniRx for Asynchronous & Event Processing
Yoshifumi Kawai
Msを16倍出し抜くwpf開発1回目
Msを16倍出し抜くwpf開発1回目
cct-inc
Async await完全に理解した
Async await完全に理解した
asuka y
そろそろレガシーな.Net開発をやめなイカ?
そろそろレガシーな.Net開発をやめなイカ?
Yuta Matsumura
An Internal of LINQ to Objects
An Internal of LINQ to Objects
Yoshifumi Kawai
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
Yoshitaka Kawashima
大規模分散システムの現在 -- Twitter
大規模分散システムの現在 -- Twitter
maruyama097
ゲームAI・実装事例の紹介
ゲームAI・実装事例の紹介
Koji Morikawa
Ruby HTTP clients comparison
Ruby HTTP clients comparison
Hiroshi Nakamura
WPF開発での陥りやすい罠
WPF開発での陥りやすい罠
Sho Okada
Java8でRDBMS作ったよ
Java8でRDBMS作ったよ
なおき きしだ
Laravel の paginate は一体何をやっているのか
Laravel の paginate は一体何をやっているのか
Shohei Okada
PHPでマルチスレッド
PHPでマルチスレッド
karky7
C#でわかる こわくないMonad
C#でわかる こわくないMonad
Kouji Matsui
C# における Redis 徹底活用
C# における Redis 徹底活用
Takaaki Suzuki
Unity and WebSockets
Unity and WebSockets
Josh Glover
Phpstormちょっといい話
Phpstormちょっといい話
Hisateru Tanaka
Php非同期の技法
Php非同期の技法
Shogo Kawahara
Más contenido relacionado
La actualidad más candente
【Unite Tokyo 2019】今すぐ現場で覚えておきたい最適化技法 ~「ゲシュタルト・オーディン」開発における最適化事例~
【Unite Tokyo 2019】今すぐ現場で覚えておきたい最適化技法 ~「ゲシュタルト・オーディン」開発における最適化事例~
UnityTechnologiesJapan002
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
Yoshifumi Kawai
Deep Dive async/await in Unity with UniTask(UniRx.Async)
Deep Dive async/await in Unity with UniTask(UniRx.Async)
Yoshifumi Kawai
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
Yoshio Hanawa
Reactive Programming by UniRx for Asynchronous & Event Processing
Reactive Programming by UniRx for Asynchronous & Event Processing
Yoshifumi Kawai
Msを16倍出し抜くwpf開発1回目
Msを16倍出し抜くwpf開発1回目
cct-inc
Async await完全に理解した
Async await完全に理解した
asuka y
そろそろレガシーな.Net開発をやめなイカ?
そろそろレガシーな.Net開発をやめなイカ?
Yuta Matsumura
An Internal of LINQ to Objects
An Internal of LINQ to Objects
Yoshifumi Kawai
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
Yoshitaka Kawashima
大規模分散システムの現在 -- Twitter
大規模分散システムの現在 -- Twitter
maruyama097
ゲームAI・実装事例の紹介
ゲームAI・実装事例の紹介
Koji Morikawa
Ruby HTTP clients comparison
Ruby HTTP clients comparison
Hiroshi Nakamura
WPF開発での陥りやすい罠
WPF開発での陥りやすい罠
Sho Okada
Java8でRDBMS作ったよ
Java8でRDBMS作ったよ
なおき きしだ
Laravel の paginate は一体何をやっているのか
Laravel の paginate は一体何をやっているのか
Shohei Okada
PHPでマルチスレッド
PHPでマルチスレッド
karky7
C#でわかる こわくないMonad
C#でわかる こわくないMonad
Kouji Matsui
C# における Redis 徹底活用
C# における Redis 徹底活用
Takaaki Suzuki
Unity and WebSockets
Unity and WebSockets
Josh Glover
La actualidad más candente
(20)
【Unite Tokyo 2019】今すぐ現場で覚えておきたい最適化技法 ~「ゲシュタルト・オーディン」開発における最適化事例~
【Unite Tokyo 2019】今すぐ現場で覚えておきたい最適化技法 ~「ゲシュタルト・オーディン」開発における最適化事例~
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
Deep Dive async/await in Unity with UniTask(UniRx.Async)
Deep Dive async/await in Unity with UniTask(UniRx.Async)
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
Reactive Programming by UniRx for Asynchronous & Event Processing
Reactive Programming by UniRx for Asynchronous & Event Processing
Msを16倍出し抜くwpf開発1回目
Msを16倍出し抜くwpf開発1回目
Async await完全に理解した
Async await完全に理解した
そろそろレガシーな.Net開発をやめなイカ?
そろそろレガシーな.Net開発をやめなイカ?
An Internal of LINQ to Objects
An Internal of LINQ to Objects
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
大規模分散システムの現在 -- Twitter
大規模分散システムの現在 -- Twitter
ゲームAI・実装事例の紹介
ゲームAI・実装事例の紹介
Ruby HTTP clients comparison
Ruby HTTP clients comparison
WPF開発での陥りやすい罠
WPF開発での陥りやすい罠
Java8でRDBMS作ったよ
Java8でRDBMS作ったよ
Laravel の paginate は一体何をやっているのか
Laravel の paginate は一体何をやっているのか
PHPでマルチスレッド
PHPでマルチスレッド
C#でわかる こわくないMonad
C#でわかる こわくないMonad
C# における Redis 徹底活用
C# における Redis 徹底活用
Unity and WebSockets
Unity and WebSockets
Destacado
Phpstormちょっといい話
Phpstormちょっといい話
Hisateru Tanaka
Php非同期の技法
Php非同期の技法
Shogo Kawahara
Yiiフレームワークを使ってみた
Yiiフレームワークを使ってみた
Hisateru Tanaka
WebAudio APIでブラウザ上で動くDJアプリケーションは作れるか? (WebAudio API アプリケーション作成入門)
WebAudio APIでブラウザ上で動くDJアプリケーションは作れるか? (WebAudio API アプリケーション作成入門)
Ryo Koizumi
CakePHP3で学ぶAPIマネジメント #phpconfuk
CakePHP3で学ぶAPIマネジメント #phpconfuk
Yuta Matsumura
JavaからScalaへ
JavaからScalaへ
takezoe
Webアプリでパスワード保護はどこまでやればいいか
Webアプリでパスワード保護はどこまでやればいいか
Hiroshi Tokumaru
テストを書くのが嫌いな君へ #m3dev
テストを書くのが嫌いな君へ #m3dev
Kazuhiro Sera
Netty 入門 - 「Netty ベース」の何かに着手する前に
Netty 入門 - 「Netty ベース」の何かに着手する前に
Takuma SHIRAISHI
OpenID ConnectとSCIMの標準化動向
OpenID ConnectとSCIMの標準化動向
Tatsuo Kudo
ngServer and-collaboratived-development-between-san-francisco-and-tokyo
ngServer and-collaboratived-development-between-san-francisco-and-tokyo
Satoshi Tanaka
Building scalablewebapps
Building scalablewebapps
Ayumu Aizawa
ソフトウェアパッケージベンダーのためのクラウドソリューション「SQL Anywhere OnDemand Edition」
ソフトウェアパッケージベンダーのためのクラウドソリューション「SQL Anywhere OnDemand Edition」
nisobe58
HTMLに学ぶ夫婦円満のコツ
HTMLに学ぶ夫婦円満のコツ
Hisateru Tanaka
Yii Framework 2.0 いま求められるRAD標準とは #phpkansai
Yii Framework 2.0 いま求められるRAD標準とは #phpkansai
Hisateru Tanaka
DATADOG TIPS #1
DATADOG TIPS #1
Naoya Nakazawa
Nettyらへん
Nettyらへん
Go Tanaka
A Cost-Effective and Scalable Merge Sort Tree on FPGAs
A Cost-Effective and Scalable Merge Sort Tree on FPGAs
Takuma Usui
料理を楽しくする画像配信システム
料理を楽しくする画像配信システム
Issei Naruta
どうやらテスト駆動型開発は死んだようです。これからのCI
どうやらテスト駆動型開発は死んだようです。これからのCI
Koichiro Sumi
Destacado
(20)
Phpstormちょっといい話
Phpstormちょっといい話
Php非同期の技法
Php非同期の技法
Yiiフレームワークを使ってみた
Yiiフレームワークを使ってみた
WebAudio APIでブラウザ上で動くDJアプリケーションは作れるか? (WebAudio API アプリケーション作成入門)
WebAudio APIでブラウザ上で動くDJアプリケーションは作れるか? (WebAudio API アプリケーション作成入門)
CakePHP3で学ぶAPIマネジメント #phpconfuk
CakePHP3で学ぶAPIマネジメント #phpconfuk
JavaからScalaへ
JavaからScalaへ
Webアプリでパスワード保護はどこまでやればいいか
Webアプリでパスワード保護はどこまでやればいいか
テストを書くのが嫌いな君へ #m3dev
テストを書くのが嫌いな君へ #m3dev
Netty 入門 - 「Netty ベース」の何かに着手する前に
Netty 入門 - 「Netty ベース」の何かに着手する前に
OpenID ConnectとSCIMの標準化動向
OpenID ConnectとSCIMの標準化動向
ngServer and-collaboratived-development-between-san-francisco-and-tokyo
ngServer and-collaboratived-development-between-san-francisco-and-tokyo
Building scalablewebapps
Building scalablewebapps
ソフトウェアパッケージベンダーのためのクラウドソリューション「SQL Anywhere OnDemand Edition」
ソフトウェアパッケージベンダーのためのクラウドソリューション「SQL Anywhere OnDemand Edition」
HTMLに学ぶ夫婦円満のコツ
HTMLに学ぶ夫婦円満のコツ
Yii Framework 2.0 いま求められるRAD標準とは #phpkansai
Yii Framework 2.0 いま求められるRAD標準とは #phpkansai
DATADOG TIPS #1
DATADOG TIPS #1
Nettyらへん
Nettyらへん
A Cost-Effective and Scalable Merge Sort Tree on FPGAs
A Cost-Effective and Scalable Merge Sort Tree on FPGAs
料理を楽しくする画像配信システム
料理を楽しくする画像配信システム
どうやらテスト駆動型開発は死んだようです。これからのCI
どうやらテスト駆動型開発は死んだようです。これからのCI
Similar a 第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
Xhprof
Xhprof
Hisashi Aruji
PHP AV BINDING
PHP AV BINDING
Yo Ya
PHPとJavaScriptの噺
PHPとJavaScriptの噺
Shogo Kawahara
2015/09/12 第9回G-Study発表資料-XdebugでPHP ScriptのProfileしてみる
2015/09/12 第9回G-Study発表資料-XdebugでPHP ScriptのProfileしてみる
Yuta Hayakawa
Phpでアプリケーションサーバー
Phpでアプリケーションサーバー
k-motoyan
8時間耐久 PHP構築の教室
8時間耐久 PHP構築の教室
Yusuke Ando
php-timecopを実戦投入してみた
php-timecopを実戦投入してみた
Yoshio Hanawa
5分でわかるphalcon php
5分でわかるphalcon php
Yusaku Kinoshita
5分でわかるPhalconPHP
5分でわかるPhalconPHP
Shohei Tai
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
sasezaki
FuelPHP活用事例
FuelPHP活用事例
Yusuke Naka
20110910 闇鍋的php魔改造
20110910 闇鍋的php魔改造
do_aki
PHPで並列処理する ライブラリを作った
PHPで並列処理する ライブラリを作った
Hironobu Saitoh
PHPエクステンションの開発tips
PHPエクステンションの開発tips
Yoshio Hanawa
次世代言語 Python による PyPy を使った次世代の処理系開発
次世代言語 Python による PyPy を使った次世代の処理系開発
shoma h
php-buildがいかに便利かを力説する
php-buildがいかに便利かを力説する
Yoshio Hanawa
RFC: "var" Deprecation
RFC: "var" Deprecation
y-uti
FukuokaPHP 3
FukuokaPHP 3
ichikaway
PHPCON_TOKYO_2022_Bigginer.pptx
PHPCON_TOKYO_2022_Bigginer.pptx
Hideo Kashioka
PHPの今とこれから2015
PHPの今とこれから2015
Rui Hirokawa
Similar a 第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
(20)
Xhprof
Xhprof
PHP AV BINDING
PHP AV BINDING
PHPとJavaScriptの噺
PHPとJavaScriptの噺
2015/09/12 第9回G-Study発表資料-XdebugでPHP ScriptのProfileしてみる
2015/09/12 第9回G-Study発表資料-XdebugでPHP ScriptのProfileしてみる
Phpでアプリケーションサーバー
Phpでアプリケーションサーバー
8時間耐久 PHP構築の教室
8時間耐久 PHP構築の教室
php-timecopを実戦投入してみた
php-timecopを実戦投入してみた
5分でわかるphalcon php
5分でわかるphalcon php
5分でわかるPhalconPHP
5分でわかるPhalconPHP
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
FuelPHP活用事例
FuelPHP活用事例
20110910 闇鍋的php魔改造
20110910 闇鍋的php魔改造
PHPで並列処理する ライブラリを作った
PHPで並列処理する ライブラリを作った
PHPエクステンションの開発tips
PHPエクステンションの開発tips
次世代言語 Python による PyPy を使った次世代の処理系開発
次世代言語 Python による PyPy を使った次世代の処理系開発
php-buildがいかに便利かを力説する
php-buildがいかに便利かを力説する
RFC: "var" Deprecation
RFC: "var" Deprecation
FukuokaPHP 3
FukuokaPHP 3
PHPCON_TOKYO_2022_Bigginer.pptx
PHPCON_TOKYO_2022_Bigginer.pptx
PHPの今とこれから2015
PHPの今とこれから2015
Más de Hisateru Tanaka
とある事業の脱レガシー
とある事業の脱レガシー
Hisateru Tanaka
ダイクストラの構造化 プログラミングに学ぶ 結婚生活
ダイクストラの構造化 プログラミングに学ぶ 結婚生活
Hisateru Tanaka
PHPカンファレンス関西2014 Yii Framework 2.0 遅れてきた5番目のフレームワーク
PHPカンファレンス関西2014 Yii Framework 2.0 遅れてきた5番目のフレームワーク
Hisateru Tanaka
Grunt front-osaka-1-lt-tanaka
Grunt front-osaka-1-lt-tanaka
Hisateru Tanaka
#phpmatsuri LT大会システムの中身
#phpmatsuri LT大会システムの中身
Hisateru Tanaka
&& || and or まぜるな危険
&& || and or まぜるな危険
Hisateru Tanaka
Phpcon kansani-2013-pinoco
Phpcon kansani-2013-pinoco
Hisateru Tanaka
はじめてのGit #gitkyoto
はじめてのGit #gitkyoto
Hisateru Tanaka
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
Hisateru Tanaka
いまどきのYiiフレームワーク
いまどきのYiiフレームワーク
Hisateru Tanaka
Kphpug beginners-2
Kphpug beginners-2
Hisateru Tanaka
関西PHP勉強会 php5.4つまみぐい
関西PHP勉強会 php5.4つまみぐい
Hisateru Tanaka
Word pressのテーマは firephpでハックすれば 良かったのか
Word pressのテーマは firephpでハックすれば 良かったのか
Hisateru Tanaka
関西Php勉強会のlimeの話
関西Php勉強会のlimeの話
Hisateru Tanaka
Pinoco phptal-phpcon-kansai
Pinoco phptal-phpcon-kansai
Hisateru Tanaka
Más de Hisateru Tanaka
(15)
とある事業の脱レガシー
とある事業の脱レガシー
ダイクストラの構造化 プログラミングに学ぶ 結婚生活
ダイクストラの構造化 プログラミングに学ぶ 結婚生活
PHPカンファレンス関西2014 Yii Framework 2.0 遅れてきた5番目のフレームワーク
PHPカンファレンス関西2014 Yii Framework 2.0 遅れてきた5番目のフレームワーク
Grunt front-osaka-1-lt-tanaka
Grunt front-osaka-1-lt-tanaka
#phpmatsuri LT大会システムの中身
#phpmatsuri LT大会システムの中身
&& || and or まぜるな危険
&& || and or まぜるな危険
Phpcon kansani-2013-pinoco
Phpcon kansani-2013-pinoco
はじめてのGit #gitkyoto
はじめてのGit #gitkyoto
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
いまどきのYiiフレームワーク
いまどきのYiiフレームワーク
Kphpug beginners-2
Kphpug beginners-2
関西PHP勉強会 php5.4つまみぐい
関西PHP勉強会 php5.4つまみぐい
Word pressのテーマは firephpでハックすれば 良かったのか
Word pressのテーマは firephpでハックすれば 良かったのか
関西Php勉強会のlimeの話
関西Php勉強会のlimeの話
Pinoco phptal-phpcon-kansai
Pinoco phptal-phpcon-kansai
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
1.
ReactPHPは もっと流行って欲しい 1CPUあたり500req/sを超えるHelloWorldを 実装する方法について
2.
たなかひさてる @tanakahisateru Pinoco developer PHPTAL contributor Firebug
translation contributor Yii framework user PhpStorm user フルスタックエンジニア(笑)
3.
ReactPHP • PHPでNode.jsのようなノンブロッキングI/O • ひとつのプログラムがメモリに常駐 •
I/O待ちの間に別のイベントの処理を同一プロセス 内で実行 • というわけでプロセス数に対する効率が非常に高い 並列処理が可能
4.
例としてreact-httpで
5.
普通のPHP
6.
react-http
7.
毎回やること 最初だけやること 初期化前倒し PHP react-http
8.
これまでPHPerが知っていたそれ は、他の言語からすれば全然マイ クロフレームワークじゃなかった
9.
Hello World デモ
10.
Silex nginx php-fpm
11.
Silex nginx php-fpm
12.
Silex nginx php-fpm 228.54
trans/sec
13.
react-http nginx メンテ状況微妙なespressoをreact-0.4で動くようにして利用 espressoはSilexをベースにしたreact-httpのWAFです
14.
react-http nginx
15.
react-http nginx 734.81 trans/sec
16.
通常の3倍
17.
ちなみに…
18.
<?php echo
19.
<?php echo 1735.65 trans/sec
20.
<?php echo 最強
21.
まあネタはこのぐらい にして
22.
速さではない 本当のメリット
23.
レスポンス完了 …のあと、裏でやって おけばいいこと
24.
応用アイデア • サイト上で他の多くのユーザーにプッシュ通知が発 生するイベントが起きる • イベントを起こした人にはレスポンスを返してしま い、その後で通知を分散処理
(react-zmq) • 他のWeb SocketホストはすべてPub/Subで受ける • レスポンス後でいいタスクは細切れのジョブにして、 それを複数のワーカーが1件づつ取って処理する
25.
というわけで HelloWorld とかどうでもいいです
26.
本当は • PHPのWebページはロードバランサーで簡単にス ケールアウト可能 →
Reactそんなに嬉しくない • バックエンド側で、ユーザーへのレスポンスより遅 れてもいい、高負荷なタスクのための内部REST等 に使う • 裏でボトルネックになるシステム(ジョブキューの 受付など)が大量の同時接続を処理したい時に有効
27.
Webページには ReactPHP不要 • PHPのメリット =
レスポンスを返せばすべて終わり • 次のリクエストはすべて空っぽの状態から始まる、だ からPHPは安全で開発しやすい • レスポンスを返すのが目的の本質なら、普通にPHPの フルスタックフレームワークを使うべき • でも、PHPの便利さを犠牲にしてでも、初期化の前倒 しによる高速化と大量同時接続の受付が必要なとき…
28.
• Node.js →
コールバック地獄かPromise地獄、一瞬でも同 期I/Oが許されないきつさ • Go → ライブラリが… • Erlang → 文法が… • Scala Actor → コンパイル…JVM… • PHP → みんなだいすき♪ サイト用のライブラリが再利用できる サイトと同じツールで開発できる 一瞬で済むなら同期I/Oしてもいいよね、よね
29.
注意したいこと • ずっとメモリに常駐するので、ヘタすると普通PHPでは起きないよ うなメモリリークが起きます。たまに再起動する必要があるかも • リクエストがクラスを専有できないからstatic使うライブラリはダ メです(I/O待ちに入ったら別のリクエストにstaticやシングルトン を上書きされちゃう) •
Laravel、Yii、FuelPHP、あとCake3のコードの再利用はたぶんア ウト • で、SymfonyのHttpKernelはいけるので、ここに来てSilexが急浮 上することになります → GitHubで php-pm 参照
30.
こんなReactPHPのことを 喋ってみたい人はぜひ、 PHPカンファレンス関西へ
Descargar ahora