# How Encore.ts combines Node.js with an asynchronous Rust runtime

DevFeed: [How Encore.ts combines Node.js with an asynchronous Rust runtime](<https://devfeed.tech/articles/encore-ts-9x-faster-than-express-js-3x-faster-than-elysiajs-hono-17797.md>)

Original publisher: [Read original article](<https://encore.dev/blog/event-loops>)

Author: André Eriksson

Published: 2024-06-17T00:00:00Z

Content type: article

Language: en

Sources: [Encore Updates](<https://devfeed.tech/sources/encore-updates.md>)

Topics: [Node.js](<https://devfeed.tech/topics/node-js.md>), [Rust](<https://devfeed.tech/topics/rust.md>), [Tokio](<https://devfeed.tech/topics/tokio.md>), [Framework](<https://devfeed.tech/topics/framework.md>), [API](<https://devfeed.tech/topics/api.md>)

Tags: [benchmark](<https://devfeed.tech/tags/benchmark.md>), [load-testing](<https://devfeed.tech/tags/load-testing.md>), [node-js](<https://devfeed.tech/tags/node-js.md>), [rust](<https://devfeed.tech/tags/rust.md>), [testing](<https://devfeed.tech/tags/testing.md>), [tokio](<https://devfeed.tech/tags/tokio.md>), [typescript](<https://devfeed.tech/tags/typescript.md>)

## AI overview

The article explains how Encore.ts combines a TypeScript backend framework with a high-performance Rust runtime. The runtime handles HTTP I/O on a multithreaded asynchronous event loop using Tokio and Hyper, then passes processed requests to Node.js handlers while maintaining Node.js compatibility.

## Source excerpt

Combining Node.js with Async Rust for remarkable performance