Git Product home page Git Product logo

Comments (2)

nprbst avatar nprbst commented on August 24, 2024

AFAIK your best bet for an Actor framework in NodeJS would be Nact: https://github.com/nactio/nact

I'm also interested in an Akka/Orleans-like framework in JS. What's your interest-level and use-case, @mikecann?

from lemans.

mikecann avatar mikecann commented on August 24, 2024

Hi,

Ye the actor libs for JS are very limited and ones that have been done (Comedy, Nact) are either not finished, not production ready or abandoned.

These are the ones I have discovered so far:

Nact - 1k stars, AKKA style actors, not production ready, no networking (location transparency), typescript support? semi-abandoned?

Comedy - 566 stars, AKKA style actors, fully featured, but looks abandoned no update in 2-6 years, no replies to issues. Old JS style, no TS support?

ts-actors - 0 stars, AKKA style, looks abandoned, hobby project

dapr - 19k+ stars, meta framework, virtual actors, very professional docs, a strong contender but after spending more time with it, its "sidecar" and abstracted state management systems seem extremely burdensome, designed more for very large enterprise systems.

lemans - 15 stars - honestly one of the best looking ones, virtual actors, simple deployment (in theory), abandoned tho? no tests, not sure if production grade, would prefer a cleaner "less OO" based implementation. Not been updated for a long time, no docs, one small example

My level of interest is: I am the CTO of a games company and we have a web game that has been live for about 3 years and has millions of players. Its entirely Typescript, React on the frontend, NodeJS on the backed. There is a lot of code and im starting to hit some architectural issues and am looking at alternative architectures. I am very interested in ES having built a few but I am also very interested in Actor systems, but have never built one. I think one of those would be a good fit for our game.

My ideal system would be:

  • Virtual Actors (I think they are simpler to understand than AKKA based)
  • Well tested, production grade with performance benchmarks
  • Flexible, it should support you to use any storage solution you want (unlike dapr)
  • Easy to deploy, it doesnt require "sidecars" kubernetes or anything like that. Ideally you can get started with it running just on a single nodejs server, then it can scale up either via processes on the same server or on other nodes on other servers. Ideally those other nodes can discover each other via a common protocol or via a shared discovery mechanism like redis.
  • The language is Typescript, ideally uses modern typescript semantics and isnt just class heavy because it has been ported from an OO language. Im thinking more simple functions, data types and options objects.
  • Great docs and solid examples to show you how to get cracking

... so that it in a nutshell ;)

from lemans.

Related Issues (2)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.