このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン 次のリビジョン 両方とも次のリビジョン | ||
php:7.2:ext:zmq [2020/11/24 11:34] y2sunlight [ダウンロードと配置] |
php:7.2:ext:zmq [2020/11/24 20:42] y2sunlight [テストコード] |
||
---|---|---|---|
行 92: | 行 92: | ||
</ | </ | ||
- | '' | + | '' |
==== DLLの確認 ==== | ==== DLLの確認 ==== | ||
- | 外部からダウンロードした拡張モジュールのDLLを手動でインストールする場合は、設置場所を間違えたり依存関係のある他のモジュールが不足していたりする場合が少なくありません。従って、拡張モジュールを使用する前に、正常にロードされているか否かを確認しておきます。 | + | 外部からダウンロードした拡張モジュールのDLLを手動でインストールする場合は、設置場所を間違えたり、依存関係のある他のモジュールが不足していたりする場合が少なくありません。従って、拡張モジュールを使用する前に、正常にロードされているか否かを確認しておきます。 |
php.exeのあるフォルダに移動します (ここでは '' | php.exeのあるフォルダに移動します (ここでは '' | ||
行 157: | 行 157: | ||
===== テストコード ===== | ===== テストコード ===== | ||
- | ZeroMQのインストールが出来たので、request-reply パターンのソケットを作って動作テストを行ってみましょう。 | + | ZeroMQのインストールが出来たので、request-reply パターンのソケットの動作テストを行ってみましょう。 |
- | サーバーは zeromq/ | + | サーバーは |
* https:// | * https:// | ||
行 182: | 行 182: | ||
'' | '' | ||
- | 以下は、クライアントです。githubの例題には適当なものがなかったので、以下のように作りました。 | + | 次は、クライアントです。githubの例題には適当なものがなかったので、以下のように作りました。 |
<code php simple-client.php> | <code php simple-client.php> | ||
<?php | <?php | ||
/* | /* | ||
- | The client sends message to the server | + | The client sends a message to the server |
*/ | */ | ||
$message = count($argv)> | $message = count($argv)> | ||
行 200: | 行 200: | ||
</ | </ | ||
- | '' | + | '' |
ZeroMQの特徴なのですが、'' | ZeroMQの特徴なのですが、'' | ||
行 220: | 行 220: | ||
サーバーを起動直後に、クライアントにメッセージが返され、クライアントは終了します。 | サーバーを起動直後に、クライアントにメッセージが返され、クライアントは終了します。 | ||
- | |||
- | <code dos> | ||
- | > php simple-client.php | ||
- | Hello | ||
- | </ | ||
もう一度、クライアントを起動します(今度は「Hi!」と言ってみましょう)。 | もう一度、クライアントを起動します(今度は「Hi!」と言ってみましょう)。 | ||
行 237: | 行 232: | ||
=== request-reply パターン === | === request-reply パターン === | ||
- | クライアントのセットをサービスのセットに接続します。これは、リモートプロシージャコールまたはタスクの分散パターンと同じです。同期('' | + | request-reply パターンは、クライアントをサービスに接続します。これは、リモートプロシージャコールと同じです。同期('' |
* https:// | * https:// |