压力测试嵌入式数据库

时间:2010-11-01 11:02:35

标签: database

我们的代理使用嵌入式数据库来存储中间状态。正在连续写入数据库,以便在重新启动代理时备份状态。我们目前正在使用Firebird嵌入式数据库,该数据库取代了SQLITE,后者在代理的高度并发环境中表现不佳。

然而,Firebird并非没有故障。当我们加强测试时,我们开始在日志中看到访问冲突异常和死锁报告(对堆栈跟踪感兴趣的人可以在此处查看 - http://tracker.firebirdsql.org/browse/CORE-3207http://tracker.firebirdsql.org/browse/CORE-3209

他们的支持非常敏感,但是我很难将我们的场景删除到崩溃数据库的最小代码示例。

我的问题 - 有没有人知道一个简单的工具来快速压力测试嵌入式数据库?

非常感谢所有优秀的撒玛利亚人。

P.S。

请不要建议自己写一下 - 我很清楚这个选项,而是喜欢下载一些东西。

1 个答案:

答案 0 :(得分:1)

Firebird是基准测试套件的一部分,您可以找到here。 它不测试可能需要的多线程访问。任何数据库都需要以某种粒度一次只允许一个更新程序。它可以是每个数据库一个,也可以是每页一个或每个对象一个。您可能需要重新设置应用程序,以便多个线程不会相互踩踏。 如果您正在寻找更好的性能,请查看VelocityDB,here与Firebird进行比较。