Configurar Akka Arrendamiento MongoDB
Esta guía le ayudará a utilizar MongoDB como un mecanismo de descubrimiento para iniciar un Akka cluster
Paso 0: Agregue la dependencia
Deberá añadir esto a pom.xml:
<dependency>
<groupId>com.iconsolutions.ipf.core.discovery</groupId>
<artifactId>akka-lease-mongodb-plugin</artifactId>
<version>${akka-lease-mongodb-plugin.version}</version>
</dependency>
Para encontrar la última versión, puede utilizar esta consulta de Nexus.
Paso 1: Utilice el Contrato de Arrendamiento
Creando un contrato de arrendamiento de manera programática
Vea el oficial Akka docs para más detalles.
LeaseProvider provider = LeaseProvider.get(system);
Lease lease = provider.getLease("<name of the lease>",
"akka.coordination.lease.mongodb",
"<owner name>");
CompletionStage<Boolean> acquired = lease.acquire();
boolean stillAcquired = lease.checkLease();
CompletionStage<Boolean> released = lease.release();
Utilizando el contrato de arrendamiento con Akka Resolutor de Cerebro Dividido
Para utilizar el MongoDB Para arrendar con el Resolutor de Cerebro Dividido, simplemente añada el fragmento a continuación de su archivo de configuración (application.conf).
Para más información, consulte el oficial Akka docs.
akka {
cluster {
downing-provider-class = "akka.cluster.sbr. SplitBrainResolverProvider"
split-brain-resolver {
active-strategy = "lease-majority"
lease-majority {
lease-implementation = "akka.coordination.lease.mongodb"
}
}
}
}
Utilizando el contrato de arrendamiento con Akka Cluster Singleton
Para utilizar el MongoDB arrendamiento con el Akka Cluster Singleton, simplemente añada el fragmento a continuación de su archivo de configuración (application.conf).
Para más información, consulte el oficial Akka docs.
akka.cluster.singleton.use-lease = "akka.coordination.lease.mongodb"
Utilizando el contrato de arrendamiento con Akka Cluster Sharding
Para utilizar el MongoDB arrendamiento con el Akka Cluster Sharding, simplemente añada el fragmento a continuación de su archivo de configuración (application.conf).
Para más información, consulte el oficial Akka docs.
akka.cluster.sharding.use-lease = "akka.coordination.lease.mongodb"
Apéndice A: Configuración Predeterminada
La tabla a continuación describe la configuración predeterminada que se incluye con la biblioteca:
| Clave de configuración | Descripción | Valor predeterminado |
|---|---|---|
|
El MongoDB URI que debe utilizar para conectarse a la base de datos. Establezca el valor de este campo si no está utilizando el complemento desde dentro de IPF o si no tiene la intención de utilizar la misma base de datos que IPF. Honra el global |
|
|
El nombre de la colección que contendrá los datos del arrendamiento. |
|
|
Debería Desactive esto si al usuario de la base de datos no se le concede el Rinde homenaje al IPF global |
|
|
El quórum de confirmación para utilizar al crear el índice para Akka Arrendamiento MongoDB. Honra el IPF global |
|
|
La duración de gracia para permitir arrendamientos adquiridos antes de que otro propietario pueda adquirirlos. |
|
|
El intervalo que un propietario de arrendamiento utilizará para actualizar la propiedad del arrendamiento. |
|
|
La duración después de la cual una operación de arrendamiento (adquirir, liberar) se considera un tiempo de espera. |
|
|
Si debe habilitar el soporte SSL. Estableciendo esto a Honra lo global |
|
|
Tipo de la tienda de claves. Honra el global |
|
|
Ruta al almacén de claves que contiene el certificado SSL (típicamente un archivo jks). Honra el global |
|
|
Contraseña utilizada para acceder al almacén de claves. Honra el global |
|
|
Contraseña utilizada para acceder a la clave en el almacén de claves. Honra lo global |
|
|
Tipo de la tienda de confianza. Honra lo global |
|
|
Ruta al almacén de confianza que contiene el certificado SSL. Honra el global |
|
|
Contraseña utilizada para acceder al almacén de confianza. Honra lo global |
|