Page History
Info |
---|
AKKA의 구성요소들은 대부분 설정화를 통해 기능방식 변경이 가능하며 설정내용을 파악하는것만으로 어떠한 기능을 제공하는지 파악도 가능합니다. 소스코드를 통해 런타임설정도 가능하지만, application.conf 와같이 외부로 설정파일을 분리하는것이 권장됩니다. |
기본 akka 설정
Code Block | ||||
---|---|---|---|---|
| ||||
akka {
loggers = ["akka.event.Logging$DefaultLogger"]
loglevel = "INFO"
stdout-loglevel = "ERROR"
}
또는
akka.logger=["akka.event.Logging$DefaultLogger"]
|
akka 구성요소의 하위 설정은 akka{...} 내부에 포함되는 방식으로 탑다운방식으로
설정을 추가하는 방식입니다.
- 관련구현Link: Spring Boot With AKKA
특정 액터 라우터 방식 설정
Code Block | ||||
---|---|---|---|---|
| ||||
actor.deployment {
/workers/router1 {
router = round-robin-pool
nr-of-instances = 5
}
/workers/router2 {
router = random-pool
nr-of-instances = 5
}
}
|
특정 주소를 가진 액터의 라우터 방식을 설정가능하며
위 예는 특정 주소를 가진 액터에 라운드로빈과,랜덤풀이 지정된 한가지 예입니다.
- 관련구현Link : 05.RouterActor
원격전송을 위한 RemoteActor 설정
Code Block | ||||
---|---|---|---|---|
| ||||
actor {
provider = "akka.remote.RemoteActorRefProvider"
enable-additional-serialization-bindings = on
}
remote {
transport = "akka.remote.netty.NettyRemoteTransport"
netty.tcp {
ip:1.1.1.1
port:10000
}
} |
RemoteActor는 네트워크 전송이 필요함으로 몇가지 통신및 직렬화에대한 설정을 할수가 있습니다.
Presistence 저장소 설정
Code Block | ||||
---|---|---|---|---|
| ||||
extensions = [akka.persistence.Persistence]
persistence {
journal {
plugin = "akka.persistence.journal.inmem"
auto-start-journals = ["akka.persistence.journal.inmem"]
}
snapshot-store {
plugin = "akka.persistence.snapshot-store.local"
auto-start-snapshot-stores = ["akka.persistence.snapshot-store.local"]
}
} |
액터는 상태를 가질수 있으며, 그 상태를 지속하기위한 몇가지 저장소를 지원합니다.
- 관련Link:Persitence