Orbit Spring

The Orbit project is a collection of JVM libraries that makes it easier to build distributed and scalable online services.

License

License

GroupId

GroupId

cloud.orbit
ArtifactId

ArtifactId

orbit-spring
Last Version

Last Version

1.3.2
Release Date

Release Date

Type

Type

jar
Description

Description

Orbit Spring
The Orbit project is a collection of JVM libraries that makes it easier to build distributed and scalable online services.
Project Organization

Project Organization

Electronic Arts Inc
Source Code Management

Source Code Management

https://github.com/orbit/orbit-spring

Download orbit-spring

How to add to project

<!-- https://jarcasting.com/artifacts/cloud.orbit/orbit-spring/ -->
<dependency>
    <groupId>cloud.orbit</groupId>
    <artifactId>orbit-spring</artifactId>
    <version>1.3.2</version>
</dependency>
// https://jarcasting.com/artifacts/cloud.orbit/orbit-spring/
implementation 'cloud.orbit:orbit-spring:1.3.2'
// https://jarcasting.com/artifacts/cloud.orbit/orbit-spring/
implementation ("cloud.orbit:orbit-spring:1.3.2")
'cloud.orbit:orbit-spring:jar:1.3.2'
<dependency org="cloud.orbit" name="orbit-spring" rev="1.3.2">
  <artifact name="orbit-spring" type="jar" />
</dependency>
@Grapes(
@Grab(group='cloud.orbit', module='orbit-spring', version='1.3.2')
)
libraryDependencies += "cloud.orbit" % "orbit-spring" % "1.3.2"
[cloud.orbit/orbit-spring "1.3.2"]

Dependencies

compile (5)

Group / Artifact Type Version
cloud.orbit : orbit-runtime jar 1.9.2
org.springframework.boot : spring-boot-autoconfigure jar
org.springframework.boot : spring-boot-starter-actuator Optional jar
org.springframework.boot : spring-boot-configuration-processor Optional jar
javax.xml.bind : jaxb-api jar 2.2.3

test (4)

Group / Artifact Type Version
org.springframework.boot : spring-boot-starter-test jar
org.springframework.boot : spring-boot-starter-web jar
org.slf4j : slf4j-simple jar
com.google.guava : guava jar 19.0

Project Modules

There are no modules declared in this project.

Orbit Spring Integration

Release Maven Central Javadocs Build Status Gitter

Integration for using the Spring Framework to manage an Orbit Cluster.

Actuator Support

Orbit Spring provides autoconfigured contributors to the Spring Boot Actuator endpoints, which activate if Spring Boot Actuator is found in your project classpath. Spring Boot Actuator is an optional dependency of Orbit Spring.

Health Indicator

The OrbitHealthIndicator is a HealthIndicator which contributes a health status of "UP" if the Stage is running and the local node is alive. The health details are listed under the key "orbit" in the health endpoint.

{
    "status": "UP",
    "orbit": {
        "status": "UP",
        "state": "RUNNING",
        "alive": true
    }
}

Info Contributor

The ActorInfoContributorLifetimeExtension is an InfoContributor which aggregates info from Actor implementation classes that implement the InfoContributor interface. The actors' info is listed under the key "actors" in the info endpoint.

Suppose we have an actor defined as follows:

public class MyActorImpl extends AbstractActor implements MyActor, InfoContributor {
    @Override
    public void contribute(final Info.Builder builder) {
        builder.withDetail("status", state().getStatus());
    }
    ...
}

If we activate two instances with identities "a" and "b", we might see this response from the info endpoint:

{
    "actors": {
        "MyActor": {
            "a": {
                "status": {
                    "foo": false,
                    "bar": 0
                }
            },
            "b": {
                "status": {
                    "foo": true,
                    "bar": 42
                }
            }
        }
    }
}

By default, actor info is grouped primarily by the actor interface, and secondarily by the actor identity. This is customizable by setting the properties:

management.info.actors.group.primary: NONE | INTERFACE | IDENTITY
management.info.actors.group.secondary: NONE | INTERFACE | IDENTITY

Developer & License

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

cloud.orbit

Orbit

Distributed systems framework for the JVM by @ElectronicArts.

Versions

Version
1.3.2
1.3.1
1.3.0
1.2.0
1.1.1
1.1.0
1.0.2
1.0.1
1.0.0
0.9.0