Rumah  >  Artikel  >  pembangunan bahagian belakang  >  关于Swoole内存操作(Table)的介绍

关于Swoole内存操作(Table)的介绍

不言
不言asal
2018-07-09 10:00:232287semak imbas

这篇文章主要介绍了关于关于Swoole 内存操作(Table)的介绍,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

使用:

//实例化表格,参数 int : 最大行数
$table = new swoole_table(1024);
//设置表格字段  参数 (字段名:string , 字段类型:int、float、string , 长度:int)
$table->column('id',$table::TYPE_INT,4);
$table->column('name',$table::TYPE_STRING,64);
$table->column('price',$table::TYPE_INT,11);
//创建表格
$table->create();
//添加数据  两种方式
$table->set('iphoneX',['id'=>1,'name'=>'iphoneX','price'=>9999]);
$table['xiaomi'] = ['id'=>2,'name'=>"小米",'price'=>3339];

foreach ($table as $key => $value) {
    var_dump($value);
    echo PHP_EOL ;
}
//单独设置某字段自增 参数('表名',’字段名‘,’步长‘)
$table->incr('iphoneX','price',1000);
var_dump($table->get('iphoneX'));
//单独设置字段自减
$table->decr('xiaomi','price',1000);
var_dump($table->get('xiaomi'));
//删除某条数据
$table->del('xiaomi');
//判断数据是否存在
if(!$table->exist('xiaomi')){
    echo '不存在此字段';
}

Swoole 内存表优点:

  • 速度快,单线程每秒可读写100万次。8核机器8线程可以支持每秒并发读写400万次 

  • 不占用IO资源

  • 无需加锁,swoole_table内置行锁自选锁,所有操作均是多线程/多进程安全。用户层完全不需要考虑数据同步问题

使用场景:

  • 可以用于解决多进程之间数据共享问题

*swoole_table模块目前为实验性质,不建议在生产环境使用。请使用成熟的方案Redis/Apc/Yac作为数据共享层

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

用laravel dingo/api创建简单的api

如何修改WordPress图片地址为相对路径

Atas ialah kandungan terperinci 关于Swoole内存操作(Table)的介绍. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn