目前,我读到的所有内容都表明您必须将 MongoDB 作为单独的进程/服务运行。有没有办法在进程内托管 MongoDB?如果不是现在,他们是否有已知的计划来实现这样的功能?
根据我使用 MongoDB 的经验以及对 问题跟踪票 的浏览,我不知道有什么方法可以在进程中托管 MongoDB。我也没有发现未来计划这样做的证据。
我建议在 mongodb-user 邮件列表询问这个问题。
MongoDB 是 GNU AGPL 许可的,因此如果您在应用程序中包含(链接),那么该应用程序的源也将是 GNU AGPL 许可的。当然,您可以在启动时从应用程序启动 MongoDB,并在应用程序停止时再次终止 MongoDB。
您可以使用嵌入式 MongoDB 库,尽管它是为单元测试目的而设计的。
另一个 Stack Overflow 问题有与此问题相关的答案。
具体来说,它提到了一个名为 Fongo 的 JVM 内存中 MongoDB。
看起来 Fongo 主要用于集成测试和/或学习。 它可能无法处理所有 Mongo 用例,但值得一看。