getawayworker连接mysql获取id问题

牛牛小宝

您好,我用getawayworker做聊天室,在event.php里用自带的db类插入数据后想用Db::instance("db1")->query("select last_insert_id()");获取上一步插入的数据的id.

请问mysql连接的作用域是单个worker进程里还是每个客户端的连接里?如果多个用户连接同一个worker同时插入数据 我用Db::instance("db1")->query("select last_insert_id()");获取id会不会获取的id乱掉?
。。- -,我对这些进程神马的都是一片浆糊。。望大神不要嫌弃,,不吝赐教。。

4122 3 0
3个回答

walkor

insert操作会自动返回last_insert_id,不用再查一遍。一个worker进程一个数据库连接,worker进程内的所有客户端连接共享这个数据库连接。

单个worker进程业务处理是串行的,操作数据库也是排队串行的。不会出现同时访问数据库的情况

  • 暂无评论
牛牛小宝

感谢 walkor 的回答,谢谢哦 ^_^!

  • 暂无评论
walkor

不客气

  • 暂无评论
年代过于久远,无法发表回答
🔝