gpt4 book ai didi

apache-flex - 我们可以从多个 Flex 应用程序访问单个 SQLite 数据库吗?

转载 作者:行者123 更新时间:2023-12-03 17:11:09 25 4
gpt4 key购买 nike

是否可以从多个 Flex 客户端应用程序(Web 和 AIR 应用程序)同时访问服务器上的单个 SQLite 数据库?

是否有数据库锁定?

我想做的是,我想将我的数据存储在服务器端的 SQLite 数据库中,并且我希望 web 和 AIR 中的 Flex 应用程序可以同时从服务器上的同一个数据库中获取数据。

这可以通过 SQLite 和 Flex 应用程序实现吗?

在 Flex 中有没有更好的方法来实现这一点?

最佳答案

我最近一直在努力研究 SQLite 和并发性。这有点糟糕,但它是可行的。

问题是,当您向 SQLite 数据库发出写入操作时,您会锁定整个数据库(与其他解决方案支持的行锁定相比)。如果您从多个位置/线程发出大量写入,当出现“数据库锁定”错误时,您将最终碰壁。

我认为可以增加 SQLite 查询的超时时间,这样这些问题就变得……稍微小一些。尽管如此,它们仍然是问题。

使用 SQLite 时可能遇到的另一个问题是使用 FOR UPDATE。当您需要检索一些行,计算给定数据的东西,然后在没有其他查询同时读取这些行的情况下发出更新时使用。它不支持这样的结构。您可以绕过它,但在执行此更新时必须显式锁定整个 数据库(您会看到有人解决此问题 here)。

并发读取很好,所以也许它适合您。

我想这整个事情的TL;DR 是它取决于您期望在数据库上有多少并发命中。如果您期望很多,也许您应该研究更强大的数据库解决方案,例如 postgresql .

无论如何我都不是数据库专家,但我希望这能为您指明正确的方向。

关于apache-flex - 我们可以从多个 Flex 应用程序访问单个 SQLite 数据库吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7117440/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com