Workerman でのデータ ストレージに Cassandra を使用する方法
今日のソフトウェア開発では、さまざまなデータ ストレージ方法とエンジンが広く使用されています。 Cassandra は、高可用性の分散型 NoSQL データベースとして、ビッグ データの分野で重要な役割を果たしています。この記事では、Workerman でのデータ ストレージに Cassandra を使用する方法を紹介し、関連するコード例を示します。
Cassandra の使用を開始する前に、Cassandra PHP 拡張機能をインストールする必要があります。ターミナルで次のコマンドを実行してインストールします。
sudo apt-get install libuv-dev libssl-dev libcurl4-openssl-dev libsasl2-dev pecl install cassandra
インストールが完了したら、次の行を php.ini ファイルに追加する必要もあります。
extension=cassandra.so
PHP Web サーバーを再起動します。変更が有効になるまで。
次に、Workerman で使用するために Cassandra 接続情報を構成する必要があります。 cassandra.php という名前の新しい PHP ファイルを作成し、次の内容を追加します:
<?php require 'vendor/autoload.php'; use CassandraCluster; use CassandraSimpleStatement; $cluster = Cluster::build() ->withContactPoints('127.0.0.1') // Cassandra节点IP地址 ->withPort(9042) // Cassandra端口号 ->withDefaultConsistency(1) ->build(); $session = $cluster->connect('mykeyspace'); // 替换为你自己的keyspace名称 function execute_query($query) { global $session; $result = $session->execute(new SimpleStatement($query)); return $result; }
このコードでは、Cassandra PHP ドライバーを使用して Cassandra データベースへの接続を確立し、CQL の実行に使用されるexecute_query 関数を定義します。クエリステートメント。
次に、Workerman で Cassandra をデータ ストレージに使用する方法を示します。まず、Workerman プロジェクトに Cassandra 接続構成を導入する必要があります。新しい PHP ファイルを作成し、worker.php という名前を付け、次の内容を追加します。
<?php require_once 'cassandra.php'; use WorkermanWorker; use WorkermanProtocolsHttpResponse; $http_worker = new Worker('http://0.0.0.0:8000'); $http_worker->onMessage = function ($connection, $request) { $path = $request->path(); $result = ''; if ($path == '/save') { $name = $_POST['name']; $email = $_POST['email']; $query = "INSERT INTO users (name, email) VALUES ('$name', '$email')"; execute_query($query); $result = 'Data saved successfully'; } $response = new Response(200, [], $result); $connection->send($response); }; Worker::runAll();
このコードでは、HTTP ワーカーを作成し、HTTP リクエストを処理するための onMessage コールバック関数を定義します。要求されたパスが /save の場合、POST パラメーターから名前と電子メールを取得し、それらを Cassandra データベースに挿入します。
Cassandra 接続と Workerman の構成が完了したので、Workerman サーバーを起動できます。ターミナルで次のコマンドを実行します:
php worker.php start
サーバーはこの時点で実行を開始し、ポート 8000 で待機します。
テストするにはブラウザに次の URL を入力します:
http://localhost:8000/save
POST パラメータに名前と電子メールを追加し、クリックしてリクエストを送信します。すべてが正常であれば、データが正常に保存されたことを示す応答を受け取ります。
概要
この記事では、Workerman のデータ ストレージに Cassandra を使用する方法を紹介します。 Cassandra PHP 拡張機能をインストールし、Cassandra 接続情報を構成し、Workerman で対応するコードを記述することで、Cassandra データベースと簡単に対話し、データ ストレージ機能を実装できます。この記事が Workerman と Cassandra を使用する際の助けになれば幸いです。
以上がWorkerman のデータ ストレージに Cassandra を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。