在我的服务器上,为了加快速度,我为我的 sqlite odbc 源分配了一个连接池。
如果两个或多个主机想要更改我的数据会怎样?
这些多个连接是否由 sqllite 自动处理?
最佳答案
你可以读 this thread
如果大多数并发访问是读取(例如 SELECT),SQLite 可以很好地处理它们。但是如果你开始并发写入,锁争用可能会成为一个问题。很大程度上取决于你的文件系统有多快,因为 SQLite 引擎本身非常快,并且有许多巧妙的优化来最小化争用。特别是 SQLite 3。
对于大多数台式机/笔记本电脑/平板电脑/手机应用程序,SQLite 足够快,因为并发性不够。 (Firefox 广泛使用 SQLite 来制作书签、历史记录等)
对于服务器应用,前段时间有人说过,在典型场景(例如博客、论坛)下,一天不到100K的页面访问量可以通过SQLite数据库完美处理,而我还没有看到任何相反的证据。事实上,使用现代磁盘和处理器,95% 的网站和 Web 服务都可以与 SQLite 一起正常工作。
如果您想要真正快速的读/写访问,请使用内存中的 SQLite 数据库。 RAM 比磁盘快几个数量级。
还有 check this
关于java - 并发是否在sqlite中自动处理?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21919402/