关于Swoole内存操作(Table)的介绍
程序员文章站
2022-04-12 19:26:06
...
这篇文章主要介绍了关于关于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中文网!
相关推荐:
以上就是关于Swoole内存操作(Table)的介绍的详细内容,更多请关注其它相关文章!