osgi - OSGi 服务和 REST 微服务之间的区别

标签 osgi microservices osgi-bundle

关闭。这个问题需要更多 focused .它目前不接受答案。












想改进这个问题?更新问题,使其仅关注一个问题 editing this post .

4年前关闭。




Improve this question




OSGi 谈论微服务,媒体谈论微服务。但是,它们似乎并不相同。这些微服务之间有什么区别。

最佳答案

我不认为你在这里比较苹果和苹果。 OSGI是应用程序架构,而 microservices是一个分布式系统的概念。

根据我的经验,微服务提供了许多好处:

  • 单个微服务易于部署、测试和维护。
  • 微服务与语言无关。这意味着您可以用 python 编写一个微服务,用 javascript 编写另一个微服务,用 go 编写第三个微服务,然后再用 java 编写另一个微服务。
  • 微服务很容易单独扩展。这意味着,如果一种类型的请求比其他类型的请求更频繁,您可以扩展您需要的微服务,而无需扩展系统中的任何其他内容。
  • 系统中的每个微服务都拥有自己的数据。这确保了清晰的边界和关注点的分离。

  • 但是,它们也有一些缺点:
  • 部署时存在更多基础架构问题。
  • 保持微服务之间的消息传递干净高效是很困难的。
  • 在具有许多移动部件的系统上进行端到端测试更加困难。
  • 消息传递的开销更大。它需要使用 HTTP 或其他形式的网络通信,而不是直接调用方法调用另一个服务。

  • 有一篇很好的文章描述了一些差异here .

    关于osgi - OSGi 服务和 REST 微服务之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49443206/

    相关文章:

    java - spring 的 Ehcache 在微服务之间不能正常工作

    laravel - 在流明框架中启用 session

    java - Android 上 Knopflerfish 上的 Pax Web

    java - 如何使用 Tycho 将 java 项目构建为带有 Maven 的 OSGi 部署包?

    java - 使用嵌入式 Felix 进行调试

    http - OSGi HTTP Bundle - 绑定(bind)到两个端口

    java - 如何为 Dockerized SpringBoot REST jar 执行指定 JVM 参数列表

    java - 是否有 OSGi 的非 Java 替代品?

    java - Mac 版 Equinox 启动器 (org.eclipse.equinox.launcher.carbon.macosx) 版本 3.4.1 无法在 64 位 Mac 上运行?

    apache-camel - 在 Servicemix 上升级 Camel