Fiberus - a new Haxe target with a native, fiber-based runtime for multiprocessing

A little update: Im slowly building more things to discover and fix issues (atm, we lost about 10% performance).

I decided to take the rough idea of spacetimedb and build a database-as-server tailored to the strengths of fiberus.

Since I already have sqlite3 + io_uring vfs im using that as the storage backend. Using macros I created a little ORM for tables and reducer(rpc) calls. Everything is a table, ACID and it also has realtime subscriptions with deltas, a little auth + session/connection management and for transport/http I use my warp10 lib to enable websocket with msgpack.

Here is a little demo-app where the small vue frontend connects directly to the db. it holds no cached state. Actions are sent via reducers and updates are received via subscription delta updates:

Turns out this was easier than I initially thought and now im marvelling at the possibilities…

3 Likes