J-Tech Japan Co., Ltd. (Headquarters: Tokyo, President: Masaki Yamaguchi, External CTO: Tomoo Takaoka, hereinafter "J-Tech Japan") is pleased to announce the development and open-sourcing of "SekibanWasmRuntime," an event sourcing and CQRS execution environment utilizing Wasm (WebAssembly).

This product is released under the Elastic License 2.0 and is available on GitHub.

GitHub Repository: https://github.com/J-Tech-Japan/SekibanWasmRuntime

Sekiban Service Site: https://www.sekiban.dev/jp

Four Key Benefits for Development Teams and Systems

Automated Complex Backend Construction

We provide a public container internally incorporating the highly scalable distributed processing framework "Microsoft Orleans." Developers do not need to build and configure complex backend infrastructure from scratch; by simply starting the container and connecting to an external database, they can obtain an advanced execution environment.

Secure Sandbox Environment

In "SekibanWasmRuntime," Wasm is adopted as a "boundary for safely executing uploaded domain code."

By utilizing Wasm to separate the execution environments of the host side (server) and domain logic (Wasm module), we have made it possible to safely execute domain logic brought in from external sources within a sandbox, while maintaining extremely high system-wide security.

Multilingual Support Beyond Language Barriers

Currently, we have prepared public packages for C# and Rust, which can be used immediately as the main languages. Furthermore, by using Wasm as the execution boundary (sandbox), the structure is not dependent on any specific language. The design has high potential for expansion to writing domain code in various programming languages that support Wasm, not just C# and Rust.

Open Release Format

The "Elastic License 2.0" is adopted as the license. By adhering to the terms, you can freely use the source code, including modifications, for self-hosting in your own environment, internal systems, and verification purposes at no cost.

Background and Purpose of "SekibanWasmRuntime" Development

The development of "SekibanWasmRuntime" began with the question of how to make the event sourcing backend something that users don't have to build themselves every time, in order to service it.

When building an event sourcing system, constructing and operating a sophisticated and stable execution environment that incorporates the actor model from scratch is a significant burden for developers. The initial goal was to create an environment that could be easily used as a service, eliminating the need to build these from scratch each time.

In the event sourcing architecture, the "domain code" that handles business logic is central to the system. To ensure that the diverse domain code brought in by users operates safely and stably on the server side, we focused on "Wasm," which continues to evolve beyond the boundaries of browsers.

By using Wasm as a "restricted and safe execution environment (sandbox) on the server side," we have established an architecture that flexibly runs domain code as small modules while protecting the safety of the host side. Furthermore, by choosing this structure with Wasm as the boundary, we have gained the powerful benefit of "multilingual support beyond language barriers," including C# and Rust.

Technical Stack and Distribution Package List: Verify in Your Own Environment Now

"SekibanWasmRuntime" is released under the Elastic License 2.0. Currently, packages are available for C# and Rust, and it supports PostgreSQL, SQLite, and Azure Cosmos DB as destinations for events and snapshots. By obtaining the publicly available container image, you can verify it in your own environment immediately.

Personal use, use in internal systems, self-hosting, modification, and redistribution of code are generally permitted (※ A separate commercial license is required only when providing it as a managed service to third parties).

It is currently released as a preview version, and we plan to further expand its features, increase the number of supported languages, and improve documentation. J-Tech Japan aims to contribute to the spread of next-generation backend architectures through this product.

Implementation Support Services

"SekibanWasmRuntime" can be used free of charge for self-hosting in your own environment, internal systems, and verification purposes based on the Elastic License 2.0. On the other hand, to ensure smooth introduction of event sourcing and CQRS architectures into your operations, and to support optimal deployment and infrastructure design for your environment, J-Tech Japan offers paid consulting and hands-on support.

Hands-on Consulting

Requirements Definition/Pre-Hearing/Program Design/Deployment Support/Accompanying Support & Code Review/Follow-up

About J-Tech Japan Co., Ltd.

Founded in 2008. With the motto of "listening to clients and creating and supporting together," we focus on providing IT solutions that support client business growth by considering what is necessary for clients' present and future businesses, creating and improving them with solid technical capabilities.

We currently have offices in Tokyo and New York, with engineers and designers from around the world gathering to work as a remote team. We are a group company of Japan Technical Software Co., Ltd. (JTS), a comprehensive IT company that celebrated its 50th anniversary in 2020.

Contact Information

Company Name: J-Tech Japan Co., Ltd.

Headquarters: Shinagawa NSS Bldg. 4F, 2-13-31 Konan, Minato-ku, Tokyo 108-0075

Representative: Masaki Yamaguchi, President and Representative Director

URL: https://www.jtechs.com/japan

Contact Form: https://www.jtechs.com/japan/contact/

Contact Email Address: [email protected]

"SekibanWasmRuntime" Related Links

GitHub Repository: https://github.com/J-Tech-Japan/SekibanWasmRuntime

Sekiban Service Site: https://www.sekiban.dev/jp

Zenn Articles

Development Background: https://zenn.dev/jtechjapan_pub/articles/sekiban-wasm-runtime-concept

Practice: https://zenn.dev/jtechjapan_pub/articles/sekiban-wasm-runtime-public-container

FACT BOX

  • Source: PR TIMES
  • Category: リリース
  • Organizations: Microsoft / GitHub / PostgreSQL