ReactはPHP製のオープンソース・ソフトウェア(MIT License)です。

最近流行のnode。その特徴は何と言ってもノンブロッキングな仕組みにあります。しかしそのためにnodeを覚えるのはちょっと…と思う方はReactを使ってみましょう。PHPでノンブロッキングWebサーバを実現しています。

[![](http://images.moongift.jp/2013/08/Screenshot 2013-08-19 9.46.07_thumb.1376910360.png)](http://images.moongift.jp/2013/08/Screenshot 2013-08-19 9.46.07.1376910360.png)
デモ。Hello World。

デモのコードです。PHPでWebサーバを立ててアクセスを処理しています。

[![](http://images.moongift.jp/2013/08/Screenshot 2013-08-19 9.49.24_thumb.1376910363.png)](http://images.moongift.jp/2013/08/Screenshot 2013-08-19 9.49.24.1376910363.png)
別なデモ。変数は解放されず、アクセスの度にインクリメントしていきます。

そのコード。変数が徐々にあがっていくのが分かります。

ReactはPHP自体がアプリケーションサーバになってリクエストを処理しています。特徴としてはノンブロッキング、イベント駆動型での処理になります。多数のコネクションを処理しなければならないといった時に使えるのではないでしょうか。

MOONGIFTはこう見る

慣れてしまえばnodeで開発する方が確かに思えますが、ちょっとしたコードのためにnodeをまるまる覚えるというのは面倒です。データベースが絡んだりするとO/Rマッパーを調べて…と徐々にややこしくなっていきます。

そこでPHPを使ってWebSocket周りの処理を行わせるというのはありかも知れません。変数が解放されない点は注意が必要で、思わぬデータが露出してしまったり、メモリが逼迫したりしないよう注意してください。

React

reactphp/react