orbit-server / orbit.server / OrbitServerConfig

OrbitServerConfig

data class OrbitServerConfig

Constructors

<init>

OrbitServerConfig(serverInfo: LocalServerInfo = LocalServerInfo( port = System.getenv("ORBIT_PORT")?.toInt(10) ?: 50056, url = System.getenv("ORBIT_URL") ?: "localhost:50056" ), tickRate: Duration = Duration.ofSeconds(1), pipelineRailCount: Int = 32, pipelineBufferCount: Int = 10_000, nodeLeaseDuration: LeaseDuration = LeaseDuration( expiresIn = Duration.ofSeconds(10), renewIn = Duration.ofSeconds(5) ), addressableLeaseDuration: LeaseDuration = LeaseDuration( expiresIn = Duration.ofMinutes(10), renewIn = Duration.ofMinutes(5) ), cpuPool: CoroutineDispatcher = Pools.createFixedPool("orbit-cpu"), ioPool: CoroutineDispatcher = Pools.createCachedPool("orbit-io"), acquireShutdownLatch: Boolean = true, nodeDirectory: ExternallyConfigured<NodeDirectory> = LocalNodeDirectory.LocalNodeDirectorySingleton, addressableDirectory: ExternallyConfigured<AddressableDirectory> = LocalAddressableDirectory.LocalAddressableDirectorySingleton)

Properties

acquireShutdownLatch

Prevents the JVM shutting down when the main thread exits.

val acquireShutdownLatch: Boolean

addressableDirectory

The a oddressable directory to use

val addressableDirectory: ExternallyConfigured<AddressableDirectory>

addressableLeaseDuration

Expiration times for addressable leases

val addressableLeaseDuration: LeaseDuration

cpuPool

The pool where CPU intensive tasks will run.

val cpuPool: CoroutineDispatcher

ioPool

The pool where IO intensive tasks will run.

val ioPool: CoroutineDispatcher

nodeDirectory

The node directory to use.

val nodeDirectory: ExternallyConfigured<NodeDirectory>

nodeLeaseDuration

Expiration times for node leases

val nodeLeaseDuration: LeaseDuration

pipelineBufferCount

The number of messages (either inbound or outbound) that may be queued before new messages are rejected.

val pipelineBufferCount: Int

pipelineRailCount

The number of workers that can process a message concurrently.

val pipelineRailCount: Int

serverInfo

The port to expose for connections and the advertised url for reaching this mesh node

val serverInfo: LocalServerInfo

tickRate

The Orbit tick rate.

val tickRate: Duration