内存操作模块
Lock Buffer Table Atomic mmap channel serialize
介绍
swooletable是一个基于共享内存和锁实现的超高性能,并发数据结构
优势
- 性能强悍,单线程每秒可读写200万次
- 应用代码无需加锁,Table内置行锁自旋锁,所有操作均是多线程/多进程安全。用户层完全不需要考虑数据同步问题;
- 支持多进程,Table可以用于多进程之间共享数据
- 使用行锁,而不是全局锁,仅当2个进程在同一cpu时间,并发读取同一条数据才会进行发生抢锁
table.php
<?php
//创建内存表
$table = new \Swoole\Table(1024);
//内存表增加一列
$table->column('id', $table::TYPE_INT,4);
$table->column('name', $table::TYPE_STRING,64);
$table->column('age', $table::TYPE_INT,3);
$table->create();
$table->set('wyt',['id'=>1,'name'=>'wyt','age'=>18]);
print_r($table->get('wyt'));
结果
自增
$table->incr('wyt','age',2);
自减
$table->decr('wyt','age',2);