给些异步mysql redis等等的 客户端例子吧

2017-01-04 12:40 添加评论 分享
已邀请:
1

walkor

赞同来自: ansendu

类似
0

walkor

赞同来自:

手册有异步mysql示例,更多的示例还要慢慢补充
http://doc3.workerman.net/comp ... .html
0

ansendu

赞同来自:

恩 看过了 好像都是基于react的组件 有点臃肿
0

walkor

赞同来自:

composer安装,目录很规整,所有组件都在vendor下,不臃肿
0

ansendu

赞同来自:

恩 想请教一个问题
public static function onWorkerStart($BusinessWorker)
{
    //mysql
    global $asyncMysql;
    $loop = $BusinessWorker::getEventLoop();
    // 连接参数
    $asyncMysql = new React\MySQL\Connection($loop, array(
        'host'   => '192.168.1.201', // 不要写localhost
        'dbname' => 'toc_grab',
        'user'   => 'devuser',
        'passwd' => 'devuser',
    ));

    // 出现错误时
    $asyncMysql->on('error', function($e){
        echo $e;
    });
    // 执行连接
    $asyncMysql->connect(function ($e) {
        if($e) {
            echo $e;
        } else {
            echo "async mysql connect success\n";
        }
    });

    //redis
    global $asyncRedis;
    $asyncRedis = new Factory($loop);

}


当 onWorkerStart的时候每个worker进程 有一个异步的 mysql和redis的实例,当并发请求多的时候 每个进程中异步的mysql 和redis 都是公用同一个连接会不会对性能有影响?
0

walkor

赞同来自:

这个需要自己测试下。
有可能需要多个mysql redis链接
0

ansendu

赞同来自:

相当于要自己开个 mysql 或者redis的 连接池进程对吧
0

ansendu

赞同来自:

楼主,再加个异步文件读写组件:)

要回复问题请先登录注册

退出全屏模式 全屏模式 回复