如何在Ruby中获得良好的MySQL驱动程序性能
我注意到,对于插入和查询中的一个或两个,我的性能非常差。查询本身是基本的,可以直接从mysql执行,没有延迟。我编写的ruby脚本只有一个线程,因此只使用了一个连接,并且除非脚本终止,否则不会关闭。非常基本,我只是想插入很多行。要获取代理密钥或检查重复项,需要进行一两次查找,但复杂度仅为O(n)。而且,它不像有数百万条记录,所以查询本身也不会花时间运行 我正在使用:如何在Ruby中获得良好的MySQL驱动程序性能,mysql,ruby,performance,Mysql,Ruby,Performance,我注意到,对于插入和查询中的一个或两个,我的性能非常差。查询本身是基本的,可以直接从mysql执行,没有延迟。我编写的ruby脚本只有一个线程,因此只使用了一个连接,并且除非脚本终止,否则不会关闭。非常基本,我只是想插入很多行。要获取代理密钥或检查重复项,需要进行一两次查找,但复杂度仅为O(n)。而且,它不像有数百万条记录,所以查询本身也不会花时间运行 我正在使用: Ruby 1.9.1 Gem/驱动程序:ruby mysql 2.9.2 MySQL 5.1.37-1ubuntu5.1 ^32
- Ruby 1.9.1
- Gem/驱动程序:ruby mysql 2.9.2
- MySQL 5.1.37-1ubuntu5.1
- ^32位ubuntu发行版上的所有32位版本
不要使用纯ruby mysql gem。它因表演缓慢而臭名昭著。与编译后的客户端一起使用 $gem安装mysql 您还需要一个工作的构建环境和ruby开发库
我很确定接口/API是相同的,或者非常相似。为什么不显示一些代码片段,以及数据库表的基本定义。它们不相关。这是一个驱动程序问题,因为查询本身不会花费很长时间。这个问题实际上是特定于Ruby SQL驱动程序的,而不是SQL性能。