Skip to content

Instantly share code, notes, and snippets.

@ryantanner
Created September 12, 2013 22:32
Show Gist options
  • Select an option

  • Save ryantanner/6544703 to your computer and use it in GitHub Desktop.

Select an option

Save ryantanner/6544703 to your computer and use it in GitHub Desktop.
Conspire Akka Configs
akka {
log-config-on-start = on
actor {
provider = "akka.cluster.ClusterActorRefProvider"
}
remote {
log-remote-lifecycle-events = off
netty.tcp {
hostname = "127.0.0.1"
port = 0
}
use-dispatcher = akka.conspire-dispatchers.cluster-dispatcher
}
conspire-dispatchers {
cluster-dispatcher {
type = "Dispatcher"
executor = "fork-join-executor"
fork-join-executor {
parallelism-min = 2
parallelism-max = 4
}
}
analyzer-dispatcher = {
# Dispatcher is the name of the event-based dispatcher
type = Dispatcher
# What kind of ExecutionService to use
executor = "fork-join-executor"
# Configuration for the fork join pool
fork-join-executor {
# Min number of threads to cap factor-based parallelism number to
parallelism-min = 2
# Parallelism (threads) ... ceil(available processors * factor)
parallelism-factor = 2.0
# Max number of threads to cap factor-based parallelism number to
parallelism-max = 10
}
# Throughput defines the maximum number of messages to be
# processed per actor before the thread jumps to the next actor.
# Set to 1 for as fair as possible.
throughput = 1
}
}
cluster {
seed-nodes = [
"akka.tcp://ClusterSystem@127.0.0.1:2551",
"akka.tcp://ClusterSystem@127.0.0.1:2552"]
auto-down = off
seed-node-timeout = 30s
use-dispatcher = akka.conspire-dispatchers.cluster-dispatcher
failure-detector {
threshold = 18.0
acceptable-heartbeat-pause = 25s
}
}
loggers = ["akka.event.slf4j.Slf4jLogger"]
loglevel = "INFO"
}
akka.actor.deployment {
// Sample service settings
/service-test-leader-singleton/service-test-leader/nodeRouter {
router = round-robin
nr-of-instances = 100
cluster {
enabled = on
max-nr-of-instances-per-node = 3
allow-local-routees = on
use-role = service-test
}
}
// Router settings for IMAP node
/imap-leader-singleton/imap-leader/nodeRouter {
router = round-robin
nr-of-instances = 100
cluster {
enabled = on
max-nr-of-instances-per-node = 3
allow-local-routees = on
use-role = imap
}
}
"/imap-leader-singleton/imap-leader/nodeRouter/*/imap-message_reader_router" {
router = smallest-mailbox
nr-of-instances = 5
}
"/imap-leader-singleton/imap-leader/nodeRouter/*/imap-message_persister_router" {
router = smallest-mailbox
nr-of-instances = 5
}
// Router settings for analytics node
"/analytics-leader-singleton/analytics-leader/nodeRouter/*/userDataReaderRouter" {
router = smallest-mailbox
dispatcher = akka.conspire-dispatchers.analyzer-dispatcher
nr-of-instances = 3
}
"/analytics-leader-singleton/analytics-leader/nodeRouter/*/messagePersisterRouter" {
router = smallest-mailbox
dispatcher = analyzer-dispatcher
nr-of-instances = 3
}
"/analytics-leader-singleton/analytics-leader/nodeRouter/*/analyzerRouter" {
router = smallest-mailbox
dispatcher = analyzer-dispatcher
nr-of-instances = 3
}
"/analytics-leader-singleton/analytics-leader/nodeRouter/*/userDataWriterRouter" {
router = smallest-mailbox
dispatcher = analyzer-dispatcher
nr-of-instances = 3
}
"/analytics-leader-singleton/analytics-leader/nodeRouter/*/userStatsWriterRouter" {
router = smallest-mailbox
dispatcher = analyzer-dispatcher
nr-of-instances = 3
}
/analytics-leader-singleton/analytics-leader/nodeRouter {
router = round-robin
nr-of-instances = 100
cluster {
enabled = on
max-nr-of-instances-per-node = 1
allow-local-routees = on
use-role = analytics
}
}
// Router settings for mailer node
/mailer-leader-singleton/mailer-leader/nodeRouter {
router = round-robin
nr-of-instances = 100
cluster {
enabled = on
max-nr-of-instances-per-node = 3
allow-local-routees = on
use-role = mailer
}
}
"/mailer-leader-singleton/mailer-leader/nodeRouter/*/statsReaderRouter" {
router = smallest-mailbox
nr-of-instances = 5
}
"/mailer-leader-singleton/mailer-leader/nodeRouter/*/rendererRouter" {
router = smallest-mailbox
nr-of-instances = 5
}
"/mailer-leader-singleton/mailer-leader/nodeRouter/*/senderRouter" {
router = smallest-mailbox
nr-of-instances = 5
}
}
include "deploy.conf"
akka.cluster.seed-nodes = ["akka.tcp://ClusterSystem@admin:2551","akka.tcp://ClusterSystem@supervisor:2552"]
akka.remote.netty.tcp.hostname = "ip-10-178-10-159"
akka.remote.netty.tcp.port = 2554
akka.cluster.roles = ["analytics"]
akka.remote.log-remote-lifecycle-events = on
akka.cluster.log-info = on
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment