mysql的异步c++连接器

async c++ connector for mysql

本文关键字:连接器 c++ 异步 mysql      更新时间:2023-10-16

搜索mysql的异步/非阻塞连接器,我基本上找到了这篇文章

然而,已经2年了,在细雨中发生的事情现在有点令人困惑。Libdrizzle在某种程度上是一个独立的依赖,但他们决定将其与项目的其余部分合并。是否有其他选项从c++异步数据库访问?

我一直在看OTL, ODB和OpenDBX,但它们似乎都是同步的(需要一个单独的线程进行非阻塞操作)

我也有同样的愿望,并得出结论,这是不支持的。即使使用MySQL C API,您也可以使用低级函数来发出查询并异步等待响应,但是您永远无法获得完整的异步结果收集——您总是以从返回结果的第一部分到最后一部分的时间阻塞而告终。

我没有直接的经验,但我读到Postgres确实支持完全异步(至少在C API中)。

我曾经在我自己的项目中使用过MySAC。虽然有点过时,但效果很好。我只是引用他们网站上的描述:

MySAC是一个提供异步请求机制的库。

如果你使用libuv,也许你会对https://github.com/huxingyi/myc感兴趣。这是我写的一个纯c mysql连接器,你可以实现你自己的网络层,或者只是使用实现的libuv基于uvmyc在示例文件夹