Adopting Rust by gracefully oxidising web applications
summary
Gradually replaces parts of a Node/JavaScript stack with Rust, keeping gRPC endpoints and HTTP proxies unchanged while rewriting a geofence service and the vehicle-streams logic. Uses MongoDB for storage, Apache Ignite then an in‑process TTL cache, gRPC for APIs and a lightweight netstore IO stream broker for fan‑out. Results: geofence uses ~97% less RAM, vehicle streams frees ~19 GB of RAM and runs about 2× faster; streaming APIs and geospatial libraries require significant porting effort and gRPC crates demand caution.
AI-written summary · about
chapters (11)
- 0:00Start
- 4:39Vehicle Streams: How They Work
- 6:56Tech Stack
- 7:31Why the JVM?
- 8:59The Rust Appeal
- 11:34First Steps in Oxidising
- 17:41Challenge: Language & Ecosystem
- 19:46Challenge: Streaming
- 25:18Challenge: Thread Safe In Process Cache
- 31:24Testing and Production
- 34:26Findings
related talks
27mHow to switch from cozy NodeJS to scary Rust as a company.
25mWTF, Rust for Web Development??
56mWhen to Choose Rust
59mRust in Production
46mZen and the Art of Convincing Your Company to Use Rust
20mMastering Rust on Edge and Cloud — AI/IoT Case Studies
01h 00mThe Future of Rust Web Applications
55mScaling out operational research with Rust
