weixin_39755136
2021-01-07 04:33 阅读 7

Does sofamosn have plans to support wasm?

sofamosn有计划支持wasm吗?看了envoy的github,envoy-wasm已经支持了

该提问来源于开源项目:mosn/mosn

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

5条回答 默认 最新

  • weixin_39983223 weixin_39983223 2021-01-07 04:33

    Hi , we detect non-English characters in the issue. This comment is an auto translation by -robot to help other users to understand this issue.

    We encourage you to describe your issue in English which is more friendly to other users.

    Does sofamosn have plans to support wasm? After seeing envoy's github, envoy-wasm has already supported it.

    点赞 评论 复制链接分享
  • weixin_39963830 weixin_39963830 2021-01-07 04:33

    我们之前做过调研,但是Go对wasm的支持力度还不是很好,Go 语言实现的 go-ext-wasmer,Life,Wagon 均无法用于生产环境,因为它们仅仅实现了 WebAssembly 运行所需的最核心部分,例如 compile(将二进制 wasm 文件编译成 Module),instantiate(通过 Module 生成 WebAssembly 实例)和 exec(执行 WebAssembly 代码) 等,这使得它们基本只能用来运行最简单的 WebAssembly 程序,它们并没有提供对生产环境下 WebAssembly 程序的支持,即并没有实现 WebAssembly 运行时所依赖的外部函数。

    我们也在继续跟进最新动态,1.14可能会支持WASI,相信有所改观。 Support for the WASI interface is not currently available but has been planned and may be available as early as Go 1.14

    点赞 评论 复制链接分享
  • weixin_39755136 weixin_39755136 2021-01-07 04:33

    我们之前做过调研,但是Go对wasm的支持力度还不是很好,Go 语言实现的 go-ext-wasmer,Life,Wagon 均无法用于生产环境,因为它们仅仅实现了 WebAssembly 运行所需的最核心部分,例如 compile(将二进制 wasm 文件编译成 Module),instantiate(通过 Module 生成 WebAssembly 实例)和 exec(执行 WebAssembly 代码) 等,这使得它们基本只能用来运行最简单的 WebAssembly 程序,它们并没有提供对生产环境下 WebAssembly 程序的支持,即并没有实现 WebAssembly 运行时所依赖的外部函数。

    我们也在继续跟进最新动态,1.14可能会支持WASI,相信有所改观。 Support for the WASI interface is not currently available but has been planned and may be available as early as Go 1.14

    那是不是可以这么理解,sofamosn或者说是sofamesh,目前解决mixer性能问题的做法是直接把mixer那块融入到sofamosn中,即生产上部署在同个proxy pod,两者之间的通讯走Domain Socket?

    点赞 评论 复制链接分享
  • weixin_39705850 weixin_39705850 2021-01-07 04:33

    SOFAMosn 中内置 Metrics 模块,目前度量、限流等我们是直接在 SOFAMosn 里提供标准并提供插件机制并依据场景不同做扩展实现内嵌在进程中的,未来 WASM 更加完善后也可能会有更优的方案。

    点赞 评论 复制链接分享
  • weixin_39755136 weixin_39755136 2021-01-07 04:33

    SOFAMosn 中内置 Metrics 模块,目前度量、限流等我们是直接在 SOFAMosn 里提供标准并提供插件机制并依据场景不同做扩展实现内嵌在进程中的,未来 WASM 更加完善后也可能会有更优的方案。

    大体明白了,也就是说目前只是做了几个功能,弱弱问一句,你所说的插件机制是EnvoyFilter吗?我看了sofamosn里面是有限流的StreamFilter的实现,但不明白是怎么下发这些xds下来的,是改造了sofamesh新增crd还是直接通过EnvoyFilter配置插入StreamFilter的配置?

    点赞 评论 复制链接分享

相关推荐