与 Docker 容器相比,使用 OSGi 有哪些优势?

What are the advantages of using OSGi over Docker containers?

我用 spring 启动开发了一个微服务应用程序,现在我想部署它,我必须在 docker 或 osgi 之间做出选择,但我对 osgi 了解不多那么使用 OSGi 相对于 Docker 容器有什么优势,反之亦然?

没有像 OSGi 与 Docker 容器这样的东西。他们解决自己领域的问题。事实上,两者都可以作为 powerful way to develop Java systems.

OSGi 可帮助您构建模块化应用程序。但它在单个 JVM 进程中运行。当您有多个具有不同运行时要求的 java 应用程序时,Docker 就会发挥作用。 docker 可以帮助您管理部署过程,否则会变得非常混乱。 Docker 当您的解决方案被构建为微服务时特别有用。

简而言之,OSGi 只不过是一个 Java 容器,提供了 JVM 上 运行 Java 代码的替代方案。相比之下,docker 容器提供了一个完整的运行时来帮助您进行部署。