Rust microservices in server-side WebAssembly

This page summarizes the projects mentioned and recommended in the original post on dev.to

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • SSVM

    WasmEdge is a lightweight, high-performance, and extensible WebAssembly runtime for cloud native, edge, and decentralized applications. It powers serverless apps, embedded functions, microservices, smart contracts, and IoT devices.

  • Started as a secure runtime inside web browsers, Wasm programs can be securely isolated in their own sandbox. With a new generation of Wasm runtimes, such as the Cloud Native Computing Foundation’s WasmEdge Runtime, you can now run Wasm applications on the server. You can compile Rust programs to Wasm bytecode, and then deploy the Wasm application in the cloud.

  • tokio

    A runtime for writing reliable asynchronous applications with Rust. Provides I/O, networking, scheduling, timers, ... (by WasmEdge)

  • The tokio and mio crates for asynchronous networking applications

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • mio

    Metal IO library for Rust WASI target (by WasmEdge)

  • The tokio and mio crates for asynchronous networking applications

  • hyper

    An HTTP library for Rust (by WasmEdge)

  • The hyper crate for HTTP server and client applications

  • distribution-spec

    OCI Distribution Specification

  • WasmEdge applications are fully OCI-compliant. They can be managed and stored in the Docker Hub or other Open Container Initiative repositories. Through crun integration, WasmEdge can run side-by-side with Linux container applications in the same Kubernetes cluster. This repository showcases how to run WasmEdge applications in popular container toolchains including CRI-O, containerd, Kubernetes, Kind, OpenYurt, KubeEdge, and more. WebAssembly runtime in the Kubernetes stack.

  • microservice-rust-mysql

    A template project for building a database-driven microservice in Rust and run it in the WasmEdge sandbox.

  • The example below, from the microservice-rust-mysql demo app, shows how to create a web server in hyper for WasmEdge. The main listening loop of the web server is as follows:

  • reqwest

    An easy and powerful Rust HTTP Client (by WasmEdge)

  • The reqwest crate for easy-to-use HTTP clients

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  • http_req

    simple wasm HTTP client

  • The http_req crate for HTTP and HTTPS clients

  • rust-mysql-simple-wasi

    Mysql client library implemented in rust.

  • The myql crate is a synchronous MySQL client

  • mysql_async_wasi

    Asyncronous Rust Mysql driver based on Tokio for WASI.

  • The mysql_async is an asynchronous MySQL client

  • dapr-sdk-wasmedge

    An experimental Dapr SDK in Rust. It is designed to run in WasmEdge applications.

  • The Dapr SDK for WASI (WebAssembly System Interface) enables WasmEdge-based microservices to access their attached Dapr sidecars. A complete demo application with a Jamstack static web frontend, three microservices, and a database service is also available.

  • hyper

    An HTTP library for Rust (by hyperium)

  • The example below, from the microservice-rust-mysql demo app, shows how to create a web server in hyper for WasmEdge. The main listening loop of the web server is as follows:

  • dapr-wasm

    A template project to demonstrate how to run WebAssembly functions as sidecar microservices in dapr

  • The Dapr SDK for WASI (WebAssembly System Interface) enables WasmEdge-based microservices to access their attached Dapr sidecars. A complete demo application with a Jamstack static web frontend, three microservices, and a database service is also available.

  • dapr

    Dapr is a portable, event-driven, runtime for building distributed applications across cloud and edge.

  • Furthermore, microservices are often deployed together with service frameworks. For example, Dapr is a popular runtime framework for microservices. It provides a “sidecar” service for each microservice. The microservice accesses the sidecar via the Dapr API to discover and invoke other services on the network, manage state data, and access message queues.

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Howto: WASM runtimes in Docker / Colima

    5 projects | dev.to | 12 Jan 2024
  • Weird Cargo.toml depedencies

    1 project | /r/rust | 11 Jul 2023
  • Anybody doing multithreading wasm controlled by rust?

    2 projects | /r/rust | 13 May 2023
  • How to Build a Kafka Producer in Rust with Partitioning

    5 projects | dev.to | 3 Mar 2023
  • Lightweight Dapr Microservices in WebAssembly

    1 project | news.ycombinator.com | 25 Oct 2022