走在云存储前沿,今日V3.1开发版本完善Swift Storage云存储接口,支持V2.0的Token接口

Swift Storage 是 openstack 开发的一套非常优秀的云存储方案,地址 http://www.openstack.org/software/openstack-storage/

通过它,你可以部署一个属于自己的云存储方案,它是基于key-value储存对象的。比如新浪SAE的云存储就是使用这个搭建的,具有非常稳定可靠的使用表现。

MyQEE 提供的 Storage 可以支持数据库驱动、文件驱动、Redis驱动以及Swift驱动,目前几乎还没有可以支持Swift协议的框架,迈启PHP框架通过驱动的方式扩展支持Swift协议,走在了云存储的前沿。

MyQEE紧跟Swift的脚本,继OpenStack提供相关的token V2.0接口后,MyQEE对Swift的驱动进行更新,目前已支持V2.0的Token接口。

Storage的使用方法:

$config = array
(
    'driver'        => 'Swift',
    'driver_config' => 'https://username:password@localhost:8080/v2.0?region=test&tenant_name=default&warehouses=mytest&prefix=test',
);
$storage = new Storage($config);

// 写入
$storage->set('test/123', 'hello');

// 读取
$storage->get('test/123');

以上代码也可以写成:

$config = array
(
    'driver' => 'Swift',
    'driver_config' => array
    (
        'host'              => 'localhost',     // 服务器IP或域名
        'user'              => 'username',      // 用户名
        'pass'              => 'password',      // 密码(key)
        'warehouses'        => 'mytest',        // 储存仓库,类似数据库的库,可不设置,默认为 default
        // 以下是token接口为v2.0的时候必须
        'tenant_name'       => 'default',       // Tenant 名称
        'region'            => 'test',          // Region
        // 以下为可选参数
        'https'             => true,            // true || false , 默认 false
        'token_api_version' => 'v2.0',          // 版本,不设置则默认 v2.0
        'port'              => 8080,            // 端口,默认http 为 80,https 为 443
        'prefix'            => 'test',          // key的前缀,默认为空
    ),
);
$storage = new Storage($config);

// 写入
$storage->set('test/123', 'hello');

// 读取
$storage->get('test/123');