Microservices 作为一项在云中部署应用和服务的新技术已成为当下最新的热门话题。但大部分围绕 microservices 的争论都集中在容器或其他技术是否能很好的实施微服务,而红帽说 API 应该是重点。
企业和服务提供商正在寻找更好的方法将应用程序部署在云环境中, microservices 被认为是未来的方向。通过将应用和服务分解成更小的、松散耦合的组件,它们可以更加容易升级和扩展,理论上是这样。
最近一场关于“容器技术和虚拟机是否是实现微服务的最佳技术”的辩论在加州硅谷的 OpenStack Silicon Valley 上进行。
正方是容器更轻、更快的部署;反方是虚拟机是更成熟的技术,并且在不同工作负载之间可以提供更好的隔离。
但这场辩论有些没抓住要点,根据 Red Hat 主管技术营销的 Arun Gupta 表示。如果 microservices 目的是使其更容易构建和部署应用程序,那么只要 API 层不变,底层技术将变得不那么重要,至少对于开发人员是这样的。
“我不在乎这些容器是什么。它们是独立的。今天它们可以是 JBoss ,明天它们可能是 Node.js ,之后是 Fuse 或者[Apache] Camel 。我真的不关心,因为它们使用 RESTful API 来相互建立联系,只要它们使用 RESTful API 就够了”,他说。
Red Hat 目前使用 Docker 和 Kubernetes ,编排框架容器是由谷歌开发的,作为 OpenShift 平台即服务提供基于云的应用开发和操作。
这是因为 Kubernetes 和 Docker 的结合是目前最成熟的技术,对于一个成功的微服务部署, Kubernetes 提供一些重要的功能,如服务发现、容器管理和组件之间的通信。
这在未来可能会由于 OpenStack Magnum project 项目的开发会发生改变, Magnum 旨在作为框架支持所有容器技术,但这取决于 Red Hat 的客户所看到的要求, Gupta 解释道。
“ OpenShift v3.0 基于 Kubernetes ,但我们是 Open Container 的一份子,作为一项对于我们的客户来说重要的技术,我们会有相应的投资,”他说。
“因此,在未来的三、四年,无论如何,如果 OpenStack Magnum 变得非常有价值,我们可以在 OpenShift 抽象它。但是今天 Kubernetes 和 Docker 仍然为王。”
Gupta 曾热衷于促进 Red Hat 的综合软件栈,说该公司对于微服务架构有着“很好的定位”。
“从底部 OpenStack 到 RHEL 平台,在这之上你有 OpenShift ,使用 Docker 和 Kubernetes ,上面还有 JBoss Application Server ,再上面有使用 JBoss developer Studio 的开发人员工具,”他说。
“ OpenShift 允许你做公有云、私有云、混合云。 JBoss 中间件是我们主要的应用平台,但我们明白不是每个人都想要 Java ,因此我们提供 Vert.x ,这是一个真正通晓多种语言的异步应用程序框架。”
然而,回到 microservices , Gupta 为了让人理解他的观点,他建议用户应该查看 API 层的堆栈。
“当你设计你的 microservices 的时候,所有你关心的问题都应该是真正应用程序级别的”他说。
本文由时速云张鹏程编译整理,转载请注明出自时速云。原文链接: http://www.v3.co.uk/v3-uk/news/2426681/red-hat-api-layer-is-the-key-to-successful-microservices
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.