一个sqlite应用诡异的问题

今天从应用层面解决一个诡异的问题。

某程序,在服务器A上跑速度很快,几乎能将cpu一个核的资源占满。而在服务器B上跑很慢,(慢了将近10倍),而且cpu使用率很低。

服务器A和B都是同样的系统,几乎相同型号的服务器。

通过各种排查原因,未果。最后还是认为是程序的问题。

最终问题发生原因锁定在一个sqlite库的读写上,有频繁的写库操作,而每次写库耗时是整个计算的瓶颈所在。

于是处理在内存上加一层缓存,并且使用事务插入,问题解决

所以猜测是服务器B上文件随机存取和句柄打开速度都差很多,每次操作都累计耗时,最终导致效率低下。

相关文章

SQLite架构简单,又有Json计算能力,有时会承担Json文件/RES...
使用Python操作内置数据库SQLite以及MySQL数据库。
破解微信数据库密码,用python导出微信聊天记录
(Unity)SQLite 是一个软件库,实现了自给自足的、无服务器...
安卓开发,利用SQLite实现登陆注册功能