在我的服务器上,为了加快速度,我已经为我的sqlite odbc源分配了一个连接池。
如果两个或多个主机想要更改我的数据,会发生什么? 这些多个连接是否由sqllite自动处理?
答案 0 :(得分:2)
简而言之:这不是一个好的解决方案。
说明强>
SQLite支持无限数量的同时阅读器,但它只允许一个作者在任何时刻。
对于你的情况,它并不好。
建议:使用其他RDBMS。
答案 1 :(得分:2)
您可以阅读this thread
如果大多数并发访问都是读取(例如SELECT),SQLite可以很好地处理它们。但如果你开始同时写,锁争用可能会成为一个问题。然后很大程度上取决于文件系统的速度,因为SQLite引擎本身非常快,并且有许多聪明的优化来最小化争用。特别是SQLite 3。
对于大多数桌面/笔记本电脑/平板电脑/手机应用程序,SQLite足够快,因为没有足够的并发性。 (Firefox广泛使用SQLite来存储书签,历史等)。
对于服务器应用程序,前段时间有人说在一般情况下(例如博客,论坛)SQLite数据库可以完美地处理每天少于100K的页面浏览量,而我还没有看到任何相反的证据。事实上,使用现代磁盘和处理器,95%的网站和Web服务可以与SQLite一起使用。
如果您想要非常快速的读/写访问权限,请使用内存中的SQLite数据库。 RAM比磁盘快几个数量级。