PHPの中のSwooleを初めて知った
3271 ワード
SwooleはPHPの高度なWeb開発フレームワークであり、フレームワークはウェブサイトの性能を向上させるためではなく、ウェブサイトの開発効率を向上させるためである.最小限の性能損失、最大の開発効率を交換します.Swooleフレームワークを利用して、複雑なWeb機能を開発し、短い時間で完成することができます.
公式定義:
Swoole:PHPの再定義
PHPの非同期、パラレル、高性能ネットワーク通信エンジンは、純粋なC言語で作成され、PHP言語の非同期マルチスレッドサーバ、非同期TCP/UDPネットワーククライアント、非同期MySQL、非同期Redis、データベース接続プール、AsyncTask、メッセージキュー、ミリ秒タイマ、異歩ファイル読み書き、非同期DNSクエリーを提供する.SwooleにはHttp/WebSocketサーバ側/クライアント、Http 2が内蔵.0サーバ側.
Swooleはインターネット、モバイル通信、企業ソフトウェア、クラウドコンピューティング、ネットゲーム、モノのインターネット、車のインターネット、スマートホームなどの分野に広く応用できる.PHP+Swooleをネットワーク通信のフレームワークとして使用することで、企業のIT研究開発チームの効率を大幅に向上させ、革新的な製品の開発に専念することができます.
swoole拡張インストールおよびケースソース:http://wiki.swoole.com/wiki/page/6.html
簡単なケース:
2つの端末入力:php serverをそれぞれ開く.php php client.phpで効果が見えます!
Swoole機能の紹介
次の機能があります.
1、ORMのようなデータ照会、SQLカプセルを提供し、MySQLのSQLとPHPのArray、セッション、Cacheをシームレスに結合させる.
2、App MVC階層構造、有効なプログラム構造階層、プログラムのメンテナンス性と拡張性を高め、低結合を実現し、インタフェースに基づいて開発する.
3、大量に集積して、実用的な機能、例えば便利なデータベース操作、テンプレート操作、キャッシュ操作、システム配置、フォーム処理、ページング、データ呼び出し、辞書操作、アップロード処理、内容編集、デバッグなど.
4、テンプレート-データ反射システム、直接テンプレートの中でデータを呼び出すことができて、多くのラベルを提供して、しかしプログラムを修正する必要はなくて、テンプレートだけを修正して、ウェブサイトの各種の更新とメンテナンスの仕事を実現することができます.
他のいくつかの機能
1、Swooleは多くのクラスを含み、多くの機能拡張を提供し、基本的にWeb開発で使用できる機能クラスは、ほとんどがSwooleフレームワークで見つけることができる.
2、Swooleはプラグインシステム、Fckeditor、Adodb、pscws中国語分詞、中国語全文インデックスシステム、最新のKey-Valueデータベース思想、TokyoTyrant、無限にフレームワークの機能を拡張することができる.
公式定義:
Swoole:PHPの再定義
PHPの非同期、パラレル、高性能ネットワーク通信エンジンは、純粋なC言語で作成され、PHP言語の非同期マルチスレッドサーバ、非同期TCP/UDPネットワーククライアント、非同期MySQL、非同期Redis、データベース接続プール、AsyncTask、メッセージキュー、ミリ秒タイマ、異歩ファイル読み書き、非同期DNSクエリーを提供する.SwooleにはHttp/WebSocketサーバ側/クライアント、Http 2が内蔵.0サーバ側.
Swooleはインターネット、モバイル通信、企業ソフトウェア、クラウドコンピューティング、ネットゲーム、モノのインターネット、車のインターネット、スマートホームなどの分野に広く応用できる.PHP+Swooleをネットワーク通信のフレームワークとして使用することで、企業のIT研究開発チームの効率を大幅に向上させ、革新的な製品の開発に専念することができます.
swoole拡張インストールおよびケースソース:http://wiki.swoole.com/wiki/page/6.html
簡単なケース:
serv = new swoole_server("0.0.0.0", 9501);
$this->serv->set(array(
'worker_num' => 8,
'daemonize' => false,
'max_request' => 10000,
'dispatch_mode' => 2,
'debug_mode' => 1
));
$this->serv->on('Start', array($this, 'onStart'));
$this->serv->on('Connect', array($this, 'onConnect'));
$this->serv->on('Receive', array($this, 'onReceive'));
$this->serv->on('Close', array($this, 'onClose'));
$this->serv->start();
}
public function onStart($serv)
{
echo "Start
";
}
public function onConnect($serv, $fd, $from_id)
{
$serv->send($fd, "Hello {$fd}!");
}
public function onReceive(swoole_server $serv, $fd, $from_id, $data)
{
echo "Get Message From Client {$fd}:{$data}
";
}
public function onClose($serv, $fd, $from_id)
{
echo "Client {$fd} close connection
";
}
}
//
$server = new Server();
client = new swoole_client(SWOOLE_SOCK_TCP);
}
public function connect()
{
if (!$this->client->connect("127.0.0.1", 9501, 1)) {
echo "Error: {$fp->errMsg}[{$fp->errCode}]
";
}
$message = $this->client->recv();
echo "Get Message From Server:{$message}
";
fwrite(STDOUT, " :");
$msg = trim(fgets(STDIN));
$this->client->send($msg);
}
}
$client = new Client();
$client->connect();
2つの端末入力:php serverをそれぞれ開く.php php client.phpで効果が見えます!
Swoole機能の紹介
次の機能があります.
1、ORMのようなデータ照会、SQLカプセルを提供し、MySQLのSQLとPHPのArray、セッション、Cacheをシームレスに結合させる.
2、App MVC階層構造、有効なプログラム構造階層、プログラムのメンテナンス性と拡張性を高め、低結合を実現し、インタフェースに基づいて開発する.
3、大量に集積して、実用的な機能、例えば便利なデータベース操作、テンプレート操作、キャッシュ操作、システム配置、フォーム処理、ページング、データ呼び出し、辞書操作、アップロード処理、内容編集、デバッグなど.
4、テンプレート-データ反射システム、直接テンプレートの中でデータを呼び出すことができて、多くのラベルを提供して、しかしプログラムを修正する必要はなくて、テンプレートだけを修正して、ウェブサイトの各種の更新とメンテナンスの仕事を実現することができます.
他のいくつかの機能
1、Swooleは多くのクラスを含み、多くの機能拡張を提供し、基本的にWeb開発で使用できる機能クラスは、ほとんどがSwooleフレームワークで見つけることができる.
2、Swooleはプラグインシステム、Fckeditor、Adodb、pscws中国語分詞、中国語全文インデックスシステム、最新のKey-Valueデータベース思想、TokyoTyrant、無限にフレームワークの機能を拡張することができる.