phpinnacle/cassis

PHPinnacle 异步 Cassandra 客户端

0.0.1 2019-04-04 09:36 UTC

This package is auto-updated.

Last update: 2024-09-04 21:43:12 UTC


README

Latest Version on Packagist Software License Coverage Status Quality Score Total Downloads

此库是 Cassandra V4 二进制协议的纯异步 PHP 实现。它使用 amphp 框架进行异步操作。

安装

通过 Composer

$ composer require phpinnacle/cassis

基本用法

<?php

use Amp\Loop;
use PHPinnacle\Cassis\Cluster;
use PHPinnacle\Cassis\Session;
use PHPinnacle\Cassis\Statement;

require __DIR__ . '/vendor/autoload.php';

Loop::run(function () {
    $cluster = Cluster::build('tcp://localhost:9042');
    
    /** @var Session $session */
    $session = yield $cluster->connect('system');

    $statement = new Statement\Simple('SELECT keyspace_name, columnfamily_name FROM schema_columnfamilies');
    $result    = yield $session->execute($statement);

    foreach ($result as $row) {
        printf("The keyspace %s has a table called %s\n", $row['keyspace_name'], $row['columnfamily_name']);
    }

    $session->close();
});

更多示例可以在 examples 目录中找到。运行方法:

CASSIS_EXAMPLE_DSN=tcp://user:pass@localhost:9042 php example/*

测试

CASSIS_TEST_DSN=tcp://user:pass@localhost:9042 composer test

基准测试

CASSIS_BENCHMARK_DSN=tcp://user:pass@localhost:9042 composer bench

贡献

请参阅 CONTRIBUTINGCONDUCT 以获取详细信息。

安全

如果您发现任何安全相关的问题,请通过电子邮件 dev@phpinnacle.com 而不是使用问题跟踪器。

致谢

许可协议

MIT 许可协议 (MIT)。有关更多信息,请参阅 许可文件