Skip to content

[Proposal] Integrating a WebAssembly (wasm) runtime to support running business logic as a wasm module. #95

Open
@mozhou-tech

Description

@mozhou-tech

One feasible option is to integrate wasmtime, as wasm is a language-agnostic compilation target that can be obtained from a variety of languages (e.g. Go, Python, .Net) and supports hot swapping, providing Rust with an extension mechanism similar to or even better than Java's Service Provider Interface (SPI).

However, this is a preliminary idea and the wasm ecosystem is not yet fully mature. Some issues to consider include:

  1. Choosing or implementing a suitable wasm runtime.
  2. Managing the process of loading, unloading, and running wasm modules, and integrating with Dubbo's service registration and discovery.
  3. Providing comprehensive traffic control, load balancing, and runtime monitoring for wasm will also require further exploration.

In conclusion, a wasm runtime has the potential to bring great imagination to the Dubbo ecosystem, but there are still some issues to be addressed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions