谷歌,IBM,及Lyft昨日正式推出其开源办事Istio。这项开源项目将给开发者提供一个统一的平台,用以有效办理监测微办事(microservices)的运行情况,并保障、提高其之间的连接性、安适性。
微办事,是一项在云中安排应用和办事的新技术。它提倡将单一应用程序划分成一组小的办事,办事之间互相协调、互相配合,为用户提供最终价值。每个办事运行在其独立的进程中,办事与办事间采用轻量级的通信机制互相沟通(通常是基于 HTTP 的 RESTful API)。每个办事都围绕着具体业务进行构建,而且能够被独立地安排到生产环境、类生产环境等。简而言之,微办事考虑的是如何围绕着业务领域组件创建应用,并对这些应用独立地进行开发、办理和加速,而微办事架构的主旨就是高度自治和高度隔离。
和传统组件比拟,微办事架构最大的优点在于它可以独立安排。此外,它在组件与组件之间定义了清晰的、语言无关、平台无关的规范接口,耦合度低,灵活性非常高。对于互联网行业及有相关需求的初创公司来说,微办事的开发简单直接,重复率低,且功能都在当地,没有分布式的办理开销和调用开销,便于集中办理,很适合业务的初期发展。
然而,微办事的架构是基于分布式系统而建的,而分布式系统运作时需跨进程、跨网络的调用,受网络延迟和带宽的影响很大。它的缺点还包孕:开发效率低,所有开发的代码都要在同一个项目里改,递交代码彼此等待,代码冲突不停;代码维护难,代码功能耦合在一起,经验不足的人难以操作;安排不灵活,构建时间长,任何小修改必需重新构建整个项目,费时费力;不变性不高,一个小问题都可能导致整个应用无法运作;扩展性不够,无法满足高并发情况下的业务需求等。
Google,IBM和Lyft的在联合声明中解释,Istio办事“不需要对实际应用程序进行任何修改,也不依赖于像gRPC这样常见的RPC(远程过程调用)库,可直接使用代理来拦截微办事器之间的所有通信。”
Istio团队还体现,该平台可允许政策驱动的操作执行,将操作团队与功能开发脱离,从而让开发者在无需大量更改代码的情况下,改进项目的安适性。
据悉,Istio平台是谷歌和IBM之间的一个协作开源项目,但支撑软件的基础来自Uber的竞争对手,Lyft公司(比来它刚和谷歌旗下的自动驾驶部门Waymo合作,研发自动驾驶技术)的Envoy代理,及其内置的办事发现(Service DIScovery)和负载均衡工具。它们能为特定的微办事添加安适性、可见性和合规性等功能,以解决传统应用程序分解为一组微办事时而出现的各种问题。Istio的推出,必将吸引到那些正在因微办事难以办理而头疼的用户。
据Gartner数据,,全球云市场将在2019年达到3120亿。微办事作为一种中间组件(middleware),是云计算产品体系中的一项重要组成部分。钛媒体发现,阿里巴巴也把其微办事架构(Alibaba's microservice structure),作为阿里云的核心竞争力之一加以宣传。
就如阿里云总裁胡晓明接受钛媒体采访时说的(《独家专访阿里云胡晓明:产业互联网,什么为王?》),“现在已经没有企业还在思考上不上云的问题,大家的焦虑已经转移到“在云的时代,我可以做什么?我的机会在哪里?我会不会被替代?”
可以预想,未来的微办事市场,还有很多机会可挖。