测量sqlite数据库的负载

时间:2015-08-28 13:21:23

标签: linux sqlite

这是一个很长的镜头但有没有任何工具,内置或第三方允许您查看数据,如总负载,每分钟查询,等待锁定在sqlite数据库上的进程数?多个进程共享一个sqlite db。我们想知道它是否是应用程序中的瓶颈。

由于

2 个答案:

答案 0 :(得分:0)

SQLite不是客户端/服务器数据库,因此没有中央服务器可以收集此信息。

所有应用程序都访问相同的数据库文件,因此您必须使用操作系统的机制来监视此文件的访问/锁定。

答案 1 :(得分:0)

我不知道某个工具,但您可以使用lslocks进行一些简单的分析。例如:

$ flock /tmp/b sleep 100 &
$ flock /tmp/b sleep 10 &
$ lslocks | grep /tmp/b
flock           32752 FLOCK 18.4K WRITE* 0          0          0 /tmp/b
flock           32750 FLOCK 18.4K WRITE  0          0          0 /tmp/b

*显示进程32752正在等待文件的写锁定, 而32750有一个写锁定。