bach-pedersen / laravel-riak
Riak 连接、缓存和会话的提供者
Requires
- php: >=5.4.0
- illuminate/cache: 4.*
- illuminate/console: 4.*
- illuminate/support: 4.*
- php-riak/php-riak-stubs: 1.1.*
Requires (Dev)
- phpunit/phpunit: 3.7.*
This package is not auto-updated.
Last update: 2020-01-20 03:44:42 UTC
README
#laravel-riak
为 Laravel 提供简单的 Riak 提供者。
##要求
此提供者基于 php_riak 构建,因此当然需要安装 php_riak 扩展。
安装说明可以在这里找到 http://phpriak.bachpedersen.dk/installation/
##安装
将 bach-pedersen/laravel-riak 添加到 composer.json,如下所示
"require": { "bach-pedersen/laravel-riak": "1.1.0" }
##配置
Riak 的主机和端口号应该在 app/config/database.php 中配置,如下所示
/* |-------------------------------------------------------------------------- | Riak Database |-------------------------------------------------------------------------- */ 'riak' => array( 'host' => 'localhost', 'port' => 8087 )
记住 php-riak 使用 riak protobuf 接口而不是 http 接口,默认端口是 8087。
此外,服务提供者应该在 app/config/app.php 文件中注册,如下所示
/* // File: app/config/app.php 'providers' => array( ... 'BachPedersen\LaravelRiak\RiakServiceProvider', ),
##使用
要获取一个 Riak\Connection,只需请求应用程序的实例。
/** @var $riak \Riak\Connection */ $riak = $this->app['riak']; // or /** @var $riak \Riak\Connection */ $riak = App::make('riak');
##缓存提供者
还有一个缓存提供者包含在内,如果需要可以激活。
要激活缓存提供者,确保正常 Riak 提供者已按上述方式配置,然后执行以下操作
// File: app/config/app.php 'providers' => array( ... 'BachPedersen\LaravelRiak\Cache\RiakCacheServiceProvider', ... ),
1: 在应用程序中添加提供者
// File: app/config/cache.php ... 'driver' => 'riak', 'bucket' => 'laravel.cache', ...
2: 更改默认缓存驱动程序并设置要存储缓存的对象的存储桶名称,如下所示
##会话提供者
// File: app/config/app.php 'providers' => array( ... 'BachPedersen\LaravelRiak\Session\RiakSessionServiceProvider', ),
会话提供者基于缓存提供者构建,因此应在 app.php 中添加该提供者和常规 riak 提供者
// File: app/config/session.php ... 'driver' => 'riak', 'bucket' => 'laravel.session', ...
此外,会话提供者应按如下方式添加
以与缓存提供者相同的方式设置 session.php 中的以下设置
Riak 配置
1: 会话和缓存提供者使用二级索引,这意味着 Riak 必须配置为使用 eleveldb 后端。
php artisan cache:bucket:init php artisan session:bucket:init
有关更多信息,请参阅 http://docs.basho.com/riak/latest/ops/advanced/backends/leveldb/。
2: 缓存和会话存储桶的属性应具有 lastWriteWins=false 和 allowMult=false,包含自动执行此操作的命令,只需运行 cache:bucket:init 和 session:bucket:init 即可正确设置。
##链接
composer 主页: https://getcomposer.org.cn/
php_riak pecl 页面: http://pecl.php.net/package/riak