Git Product home page Git Product logo

Comments (10)

JoeHegarty avatar JoeHegarty commented on June 2, 2024 8

My apologies on the continuing lack of docs.
It is high on my priority list but other things continue to get in the way.

Orbit 2 is actually quite different to Orbit 1.

  • It's a standalone application - Like a database or similar, you deploy instances of Orbit 2 (or use a managed service in theory)
  • More generic - Orbit 2 is not specifically an actor framework but is a more generic routing, placement and messaging platform
  • Model what you want - With the above, you can model different kinds of behaviors, from basic RPC to actors and streams. We provide default impls (such as virtual actors) in our client sdks to help you get started
  • Standards are good - We've made the tech less custom by leveraging technology such as gRPC under the hood
  • Polyglot - Because Orbit 2 is using industry accepted protocols etc, in theory it can work across languages by way of client SDKs. Currently we only have the Kotlin/JVM SDK but there is no reason we couldn't provide Go, NodeJS etc in future
  • Modern - For the server side of things we've adopted Kotlin and in general the approach is more modern. We learned a lot of lessons from Orbit 1 and now we have a chance to address them in the core design

There is so much more it is hard to cover, how it does all of the above is quite interesting and I hope to be able to dive deep in the docs to describe it all.

In general, the takeaways are:

  • Orbit is effectively a server/service that you access via a client sdk
  • It's meant to help you with the problems inherent in how you place instances of objects, load balance between them and route messages to them in a distributed system
  • We've pre-modelled some common use cases (such as virtual actors) to make it as friendly as possible.

One other small note I wanted to add, it is in a working state at this point, and internally we have early adopter customers starting to shake it down. I realize without docs it is quite painful, but it is possible to use.

Most of our future effort will be into:

  • Handling shutdown etc more gracefully (with the goal of supporting zero downtime updates and similar)
  • Some features that were present in Orbit 1 are not yet modelled in Orbit 2 (streams being the major one)
  • Documentation
  • Logging & metrics
  • etc

from orbit.

JoeHegarty avatar JoeHegarty commented on June 2, 2024 4

Thanks for your interest. Unfortunately Orbit 2 is not yet in a working state, we're working hard to get it there and expect to have an early release in the next few weeks.
Documentation will accompany the release.

from orbit.

brettmorien avatar brettmorien commented on June 2, 2024 4

Hi folks. We've done an initial round of documentation to help with the concepts and onboarding.
Orbit Docs
There is also a sample app which can help fill in some blanks and get you going.
Orbit Sample

Hope that's helpful and we can get some time to beef up the docs in the future. We welcome any feedback and we also take contributions, including documentation, if you have them.

from orbit.

azell avatar azell commented on June 2, 2024 1

Hoping to learn more about the internal design and decisions made in the near future.

from orbit.

emansom avatar emansom commented on June 2, 2024

Thanks. I'm looking forward to it!
Keep the good work up 🙂

from orbit.

leonlee avatar leonlee commented on June 2, 2024

Orbit is really interesting, Any design concept ?

from orbit.

pak3nuh avatar pak3nuh commented on June 2, 2024

Since this is relative to the lack of documentation, what can we expect from Orbit 2.0?

Will it introduce some fundamental changes or is it just a rewrite in Kotlin to take advantage of features like suspending functions?

Sorry for the hijack.

from orbit.

wanton7 avatar wanton7 commented on June 2, 2024

If understood explanation correctly Orbit 2 is somewhat similar to Microsoft's new project called Dapr? Dapr uses sidecar app made with Go language that is running side by side with your client app you can write in any programming language and sidecar handles cluster management, virtual actor routing and storage etc. https://github.com/dapr/dapr

from orbit.

mattdkerr avatar mattdkerr commented on June 2, 2024

Looks great!

from orbit.

mattdkerr avatar mattdkerr commented on June 2, 2024

If understood explanation correctly Orbit 2 is somewhat similar to Microsoft's new project called Dapr? Dapr uses sidecar app made with Go language that is running side by side with your client app you can write in any programming language and sidecar handles cluster management, virtual actor routing and storage etc. https://github.com/dapr/dapr

There are definitely similarities, which is interesting!

from orbit.

Related Issues (20)

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.