Kubernetes Despliegue
Despliegue
HTMLos conectores pueden configurarse para realizar reintentos y utilizar el patrón de cortacircuito para proteger el HTM Servidor Http (para más información sobre cómo configurar esto, visite Conector).
Aquí tiene un ejemplo de ConfigMap que puede utilizar para desplegar HTM to Kubernetes:
akka {
remote.artery.canonical.hostname = ${POD_IP}
# Use Kubernetes API to discover the cluster
discovery {
kubernetes-api {
pod-label-selector = "app=%s"
}
}
management {
# use the Kubernetes API to create the cluster
cluster.bootstrap {
contact-point-discovery {
discovery-method = kubernetes-api
service-name = ${AKKA_CLUSTER_BOOTSTRAP_SERVICE_NAME}
required-contact-point-nr = 1
required-contact-point-nr = ${?REQUIRED_CONTACT_POINT_NR}
}
}
# available from Akka management >= 1.0.0
health-checks {
readiness-path = "health/ready"
liveness-path = "health/alive"
}
}
actor {
provider = cluster
}
cluster {
seed-nodes = []
downing-provider-class = "akka.cluster.sbr.SplitBrainResolverProvider"
split-brain-resolver {
active-strategy = keep-majority
stable-after = 20s
}
sharding {
remember-entities = off
handoff-timeout = 8s
least-shard-allocation-strategy.rebalance-absolute-limit = 20
rebalance-interval = 2s
number-of-shards = 100
}
}
}
Consideraciones para CosmosDB en Azure
Por defecto,HTM registra 3 procesadores de eventos:
-
Tarea leer procesador de eventos secundarios
-
Procesador de eventos del lado de lectura del historial de tareas
-
Procesador de eventos de ejecución masiva
Estos procesadores registran sus propios flujos de procesadores de eventos, lo que consume más Unidades de Solicitud (RUs) en Cosmos DB.
Para ahorrar algunos RU en Cosmos DB, se puede utilizar DelegatingEventProcessor. En este caso, solo un procesador de eventos consume eventos del diario y luego delega los eventos a otros procesadores de eventos registrados.
La desventaja de DelegatingEventProcessor es que si el procesamiento del evento falla en cualquiera de los procesadores de eventos delegados, el mismo evento se reproducirá en todos los procesadores de eventos delegados (incluso si el evento fue procesado con éxito por otros). Cuando hay tres procesadores de eventos independientes, el evento que falla se reproducirá únicamente por el único procesador de eventos donde falló el procesamiento anterior.
Puede habilitar la Delegación Event Procesador utilizando la siguiente configuración
ipf.htm.event-processor.delegating.enabled = true
Cosmos DB para MongoDB no admite la creación de índices únicos en colecciones no vacías.
HTMdetecta ipf.mongodb.database-mode = cosmosdb y crea automáticamente su índice compuesto sin unicidad para evitar errores de inicio.
|