easyswoole / mysqli-pool
高效的 swoole 框架
1.0.4
2019-08-09 03:44 UTC
Requires
- easyswoole/component: ^1.5
- easyswoole/mysqli: ^1.1
Requires (Dev)
- easyswoole/phpunit: ^1.0
- easyswoole/swoole-ide-helper: ^1.2
README
连接池注册
在工作者启动前(主进程)注册连接配置;
use EasySwoole\Mysqli\Config; use EasySwoole\MysqliPool; $config1 = new Config(); $config2 = new Config; Mysql::getInstance()->register('mysql1',$config1); Mysql::getInstance()->register('mysql2',$config2);
连接池使用
use EasySwoole\MysqliPool\Mysql;
use EasySwoole\MysqliPool\Connection;
use EasySwoole\Mysqli\Config;
$config1 = new Config([
'host' => '',
'port' => 3306,
'user' => '',
'password' => '',
'database' => '',
'timeout' => 5,
'charset' => 'utf8mb4',
]);
$config2 = new Config([
'host' => '',
'port' => 3306,
'user' => '',
'password' => '',
'database' => '',
'timeout' => 5,
'charset' => 'utf8mb4',
]);
//注册的时候会返回对应的poolConf
Mysql::getInstance()->register('my1',$config1);
Mysql::getInstance()->register('my2',$config2);
go(function (){
$conn = Mysql::defer('my1');
var_dump(count($conn->rawQuery('show tables')));
$ret = Mysql::invoker('my1',function (Connection $conn){
return $conn->rawQuery('show tables');
});
var_dump(count($ret));
});
go(function (){
$conn = Mysql::defer('my2');
var_dump(count($conn->rawQuery('show tables')));
$ret = Mysql::invoker('my2',function (Connection $conn){
return $conn->rawQuery('show tables');
});
var_dump(count($ret));
});