[go: up one dir, main page]

Menu

Tree [e46054] v1.0.0-rc2 /
 History

HTTPS access


File Date Author Commit
 .idea 2015-04-10 Daniel Sperry Daniel Sperry [c0908b] Setting intellij copyright defaults.
 actors 2017-05-26 Joe Hegarty Joe Hegarty [e46054] Version 1.0.0-rc2
 commons 2017-05-26 Joe Hegarty Joe Hegarty [e46054] Version 1.0.0-rc2
 .gitignore 2015-05-28 Jeff Theriault Jeff Theriault [40d680] Adding .DS_Store to gitignore
 .travis.yml 2017-03-14 Joe Hegarty Joe Hegarty [5b0b52] Add Invocation Handler Extensions (#224)
 CONTRIBUTING.md 2016-09-06 Joe Hegarty Joe Hegarty [7b9853] Update CONTRIBUTING.md
 LICENSE 2017-05-04 Joe Hegarty Joe Hegarty [33e8fe] Update LICENSE
 README.md 2017-03-30 Joe Hegarty Joe Hegarty [d07443] Fix icons
 eclipse-code-style.epf 2016-03-30 Joe Hegarty Joe Hegarty [c3c494] Refactor paths
 pom.xml 2017-05-26 Joe Hegarty Joe Hegarty [e46054] Version 1.0.0-rc2

Read Me

Orbit Logo

Release
Maven Central
Javadocs
Build Status
Gitter
Twitter Follow

Orbit is a framework to write distributed systems using virtual actors on the JVM. It allows developers to write highly distributed and scalable applications while greatly simplifying clustering, discovery, networking, state management, actor lifetime and more.

Duke's Choice Award Logo

Orbit received the 2016 Duke's Choice Award for Open Source, read here for more information.

Full Documentation

See the Wiki for full documentation, examples and other information.

Developer & License

This project was developed by Electronic Arts and is licensed under the BSD 3-Clause License.

Simple Example

Java

public interface Hello extends Actor
{
    Task<String> sayHello(String greeting);
}

public class HelloActor extends AbstractActor implements Hello
{
    public Task<String> sayHello(String greeting)
    {
        getLogger().info("Here: " + greeting);
        return Task.fromValue("Hello There");
    }
}

Actor.getReference(Hello.class, "0").sayHello("Meep Meep");

Scala

trait Hello extends Actor 
{
  def sayHello(greeting: String): Task[String]
}

class HelloActor extends AbstractActor[AnyRef] with Hello 
{
  def sayHello(greeting: String): Task[String] = 
  {
    getLogger.info("Here: " + greeting)
    Task.fromValue("Hello There")
  }
}

Actor.getReference(classOf[Hello], "0").sayHello("Meep Meep")