swoole框架(自研)
github地址: https://github.com/lsjhtang/swoole-http
框架内容: Ioc,Di,注解,连接池,开发者模式支持代码热更新;
开始
- Http Server start
[root@buddha buddha]# php boot {start|stop|restart}
Route
- 使用注解路由
/**
* @RequestMapping(value="/user/{uid:\d+}",method={"GET"})
*/
public function user( Request $request, $uid, Response $response)
{
}
DB
- 使用注解的方式, 选择default数据库
/**
* @DB(source = "default")
* @var MyDB
*/
public $db;
模型
User::find(1);
事务
- DB事务
$db = $this->db1->Begin();
$this->db1->table('test')->insert(['user_name'=>'zhangshan','age'=>1]);
$db->Commit();
- 模型事务
$db = $this->db1->Begin();
$users = new User();
$users->user_name = 1;
$users->age = 10;
$users->save();
$test = Test::find(1);
$test->test_age = 1;
$test->save();
$db->Commit();
Redis
- redis注解 支持string hash set等类型
/**
* @Redis(key="name")
*/
public function user( Request $request, $uid, Response $response)
{
return $this->db->table('test')->get();
}
- redis锁 lua脚本
/**
* @Lock(prefix="lock",key="#0")
* @RequestMapping(value="/lock/{uid:\d+}")
*/
public function lock( Request $request, $uid, Response $response)
{
return $this->db->table('test')->get();
}