我们正在做一个MySQL的小型基准测试,我们希望了解它对数据的性能。
该测试的一部分是查看当多个并发线程对服务器执行各种查询时,服务器如何工作。
在MySQL文档(5.0)是不是多线程的客户真的清楚。我应该指出,我确实针对线程安全库(libmysqlclient_r.so)进行了链接
libmysqlclient_r.so
我正在使用准备好的语句,并且同时执行读取(SELECT)和写入(UPDATE,INSERT,DELETE)操作。
mysql_real_connect()
mysql_init()
mysql_affected_rows
作为一个相当大的C应用程序的维护者,该应用程序可以从多个线程进行MySQL调用,我可以说在每个线程中简单地建立一个新连接都没有问题。我遇到的一些警告:
libmysqlclient_r
mysql_library_init()
main()
MYSQL
mysql_thread_init()
mysql_thread_end()
mysql_library_end()
基本上,不要共享MYSQL结构或特定于该结构创建的任何内容(即MYSQL_STMTs),它会按预期工作。
MYSQL_STMT
与为我建立连接池相比,这似乎省去了很多工作。