§Using Akka Discovery
Lagom 1.4.12 contains a backport of Akka Discovery Service Locator
, a component introduced in Lagom 1.5.1. It provides a built-in integration with Akka Discovery throught a ServiceLocator implmentation that wraps Akka Discovery. This is the recommended implementation for production specially for users targeting Kubernetes and DC/OS (Marathon).
§Dependency
To use this feature add the following in your project’s build:
import com.lightbend.lagom.core.LagomVersion
libraryDependencies += "com.lightbend.lagom" %% "lagom-scaladsl-akka-discovery-service-locator" % LagomVersion.current
The example above uses LagomVersion.current
in order to guarantee that dependency stays aligned with your current Lagom plugin version.
§Configuration
Once you have it in your project you can add the component to your LagomApplicationLoader
.
import com.lightbend.lagom.scaladsl.devmode.LagomDevModeComponents
import com.lightbend.lagom.scaladsl.server._
import com.lightbend.lagom.scaladsl.akka.discovery.AkkaDiscoveryComponents
class HelloApplicationLoader extends LagomApplicationLoader {
override def load(context: LagomApplicationContext) =
new HelloApplication(context) with AkkaDiscoveryComponents
override def loadDevMode(context: LagomApplicationContext) =
new HelloApplication(context) with LagomDevModeComponents
}
Next, you will need to choose one of the available Akka Discovery implementations and configure it in your application.conf
file. Consult the Akka Discovery documentation for further instructions.
Note: this component was previous published as an independent library. If you have it on your classpath it’s recommended to remove it and use the one being provided by Lagom directly.