axdb2 is a high performance distributed key-value database. It was developed for learning how database works.
axdb2 depends to asyncServer.
The asyncServer is an async/await based asynchronous IO framework that making network development easier. the code like this:
class TestServer : Handler { override async Void onService(Socket socket) { buf := NioBuf.makeMem(1024) n := await socket.read(buf, 1) buf.flip() echo("=====server receive: $buf: "+buf.readAllStr) buf.clear buf.printLine("HelloWorld") buf.flip n2 := await socket.write(buf) echo("=====send: "+n2) } static Void main() { Server { port = 8080 handler = TestServer# }.start } }
The Http protocol is also supported.
asyncServer , axdb2
Have fun!
Very cool!
Years ago I wrote a (non-distributed) database to explore how we could use Clojure-style persistent data structures for zero-copy concurrent access:
https://github.com/afrankvt/bruno
Has always been one of my favorite Fantom projects (and still runs a production website so actually got to use it!)
Thanks. The bruno looks very lightweight.
Login or Signup to reply.
go4 Fri 8 Oct 2021
axdb2 is a high performance distributed key-value database. It was developed for learning how database works.
axdb2 depends to asyncServer.
The asyncServer is an async/await based asynchronous IO framework that making network development easier. the code like this:
The Http protocol is also supported.
asyncServer , axdb2
Have fun!
andy Fri 8 Oct 2021
Very cool!
Years ago I wrote a (non-distributed) database to explore how we could use Clojure-style persistent data structures for zero-copy concurrent access:
https://github.com/afrankvt/bruno
Has always been one of my favorite Fantom projects (and still runs a production website so actually got to use it!)
go4 Sat 9 Oct 2021
Thanks. The bruno looks very lightweight.