sqlite3可以优雅地处理30个并发更新请求吗?

时间:2012-04-09 17:50:35

标签: mysql sqlite

我们喜欢sqlite3的简单性,但担心它能够优雅地处理并发更新。我们的网络应用程序适用于大约30位有权更新的用户(最多50位用户)和许多只能阅读该页面的网络用户(比如500位网络用户)。那些30(50)个用户可能不会同时进行更新。每日更新数据库的常规基数不应超过1000次更新(考虑将一个数据库记录保存到表中作为一次更新)。更新活动很可能发生在上午9点至下午5点的工作时间。

由于sqlite3锁定整个db进行更新(不确定它是否锁定读取请求),我们的问题是sqlite3足够强大,可以在我们的情况下优雅地处理并发更新,而不会显示异常错误。 非常感谢。

1 个答案:

答案 0 :(得分:2)

我认为您已经掌握了有关SQLite如何工作的足够信息。所以你的问题的答案是它可以处理的“是”。但真正的问题是表现会是什么?它取决于更新/插入数据库的频率。更新将锁定并保持读取等待。

假设性能可以接受并且您使用它。如果您的数据库损坏怎么办?即使是最先进的DBMS系统也可能存在损坏的数据。从服务器关闭到错误可能有很多原因。如果您的SQLite被破坏,据我所知,恢复数据库文件更难。

我强烈建议不要冒险并使用非嵌入式DBMS。