3

我在这里读过(搜索字符串键“核心以单线程模式运行”),db4o 核心本质上是单线程的,那么当多个用户尝试同时访问数据库时,它如何保持性能/吞吐量?

4

1 回答 1

6

是的,db4o 本质上是单线程的。它使用一把大锁来保护它的所有操作。它在代码中很容易看到。

如何保持吞吐量?好吧,它根本没有!db4o 从未为执行大量并发操作的应用程序(如 webapps)构建。它真的是为嵌入桌面/移动应用程序而构建的。它无法处理服务器负载。为了获得高吞吐量,您需要使用更大的数据库。

除了单线程之外,db4o 也没有提供任何良好的并发控制来检测不同事务的冲突更改。

于 2011-06-15T12:30:45.680 回答