Layotto —— Golang 开发的应用运行时

Layotto(/leɪˈɒtəʊ/) 是一款使用 Golang 开发的应用运行时,旨在帮助开发人员快速构建云原生应用,帮助应用和基础设施解耦。它为应用提供了各种分布式能力,比如状态管理,配置管理,事件发布订阅等能力,以简化应用的开发。

Layotto 以开源的 MOSN 为底座,在提供分布式能力以外,提供了 Service Mesh 对于流量的管控能力。

功能:

  • 服务通信
  • 服务治理,例如流量的劫持和观测,服务限流等
  • 作为 istio 的数据面
  • 配置管理
  • 状态管理
  • 事件发布订阅
  • 健康检查、查询运行时元数据
  • 基于WASM的多语言编程

工程架构

如下图架构图所示,Layotto 以开源 MOSN 作为底座,在提供了网络层管理能力的同时提供了分布式能力,业务可以通过轻量级的 SDK 直接与 Layotto 进行交互,而无需关注后端的具体的基础设施。

Layotto 提供了多种语言版本的 SDK,SDK 通过 gRPC 与 Layotto 进行交互,应用开发者只需要通过 Layotto 提供的配置文件配置文件 来指定自己基础设施类型,而不需要进行任何编码的更改,大大提高了程序的可移植性。

诞生背景

Layotto希望可以把 Multi-Runtime 跟Service Mesh两者的能力结合起来,无论你是使用MOSN还是Envoy或者其他产品作为Service Mesh的数据面,都可以在不增加新的sidecar的前提下,使用Layotto为这些数据面追加Runtime的能力。

例如,通过为MOSN添加Runtime能力,一个Layotto进程可以既作为istio的数据面 又提供各种Runtime API(例如Configuration API,Pub/Sub API等)。

此外,随着探索实践,我们发现sidecar能做的事情远不止于此。 通过引入WebAssembly ,我们正在尝试将Layotto做成 FaaS (Function as a service) 和 reloadable sdk 的运行时容器。

如果你对诞生背景感兴趣,可以看下这篇演讲

优秀的个人博客,低调大师

微信关注我们

原文链接:https://www.oschina.net/p/layotto

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
优质分享Android(本站安卓app)

优质分享Android(本站安卓app)

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Mario,低调大师唯一一个Java游戏作品

Mario,低调大师唯一一个Java游戏作品

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Java Development Kit(Java开发工具)

Java Development Kit(Java开发工具)

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

Sublime Text 一个代码编辑器

Sublime Text 一个代码编辑器

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。