update cache-module

This commit is contained in:
2025-09-03 23:29:37 +02:00
parent 63a1b97db7
commit 2eefe24a4f
6 changed files with 93 additions and 93 deletions
@@ -8,10 +8,10 @@ import java.util.concurrent.atomic.AtomicLong
import java.util.concurrent.atomic.LongAdder
/**
* Comprehensive metrics tracking for Redis Event Store operations.
* Umfassende Metriken-Verfolgung für Redis Event-Store-Operationen.
*
* Tracks performance metrics, error rates, and operational statistics
* to provide insights into event store health and performance.
* Verfolgt Performance-Metriken, Fehlerquoten und Betriebsstatistiken,
* um Einblicke in die Gesundheit und Performance des Event-Stores zu geben.
*/
class EventStoreMetrics {
private val logger = LoggerFactory.getLogger(EventStoreMetrics::class.java)
@@ -11,7 +11,7 @@ import java.util.UUID
import java.util.concurrent.ConcurrentHashMap
/**
* Jackson-based implementation of EventSerializer.
* Jackson-basierte Implementierung des EventSerializer.
*/
class JacksonEventSerializer : EventSerializer {
private val logger = LoggerFactory.getLogger(JacksonEventSerializer::class.java)
@@ -86,7 +86,7 @@ class RedisEventStore(
}
/**
* Validates the expected version and returns the current version, handling cache invalidation on conflicts.
* Validiert die erwartete Version und gibt die aktuelle Version zurück, behandelt Cache-Invalidierung bei Konflikten.
*/
private fun validateAndGetCurrentVersion(streamId: UUID, expectedVersion: Long): Long {
var currentVersion = getStreamVersion(streamId)
@@ -105,7 +105,7 @@ class RedisEventStore(
}
/**
* Appends multiple events in a single Redis transaction for optimal performance.
* Fügt mehrere Events in einer einzigen Redis-Transaktion hinzu für optimale Performance.
*/
private fun appendEventsInBatch(events: List<DomainEvent>, streamId: UUID, currentVersion: Long): Long {
val streamKey = getStreamKey(streamId)
@@ -15,7 +15,7 @@ import org.springframework.data.redis.core.StringRedisTemplate
import java.time.Duration
/**
* Redis event store properties.
* Redis Event Store Eigenschaften.
*/
@ConfigurationProperties(prefix = "redis.event-store")
data class RedisEventStoreProperties(
@@ -39,17 +39,17 @@ data class RedisEventStoreProperties(
)
/**
* Spring configuration for Redis event store.
* Spring-Konfiguration für Redis Event Store.
*/
@Configuration
@EnableConfigurationProperties(RedisEventStoreProperties::class)
class RedisEventStoreConfiguration {
/**
* Creates a Redis connection factory for the event store.
* Erstellt eine Redis-Verbindungsfactory für den Event Store.
*
* @param properties Redis event store properties
* @return Redis connection factory
* @param properties Redis Event Store Eigenschaften
* @return Redis-Verbindungsfactory
*/
@Bean
@ConditionalOnMissingBean(name = ["eventStoreRedisConnectionFactory"])
@@ -68,10 +68,10 @@ class RedisEventStoreConfiguration {
}
/**
* Creates a Redis template for the event store.
* Erstellt ein Redis-Template für den Event Store.
*
* @param connectionFactory Redis connection factory
* @return Redis template
* @param connectionFactory Redis-Verbindungsfactory
* @return Redis-Template
*/
@Bean
@ConditionalOnMissingBean(name = ["eventStoreRedisTemplate"])
@@ -86,9 +86,9 @@ class RedisEventStoreConfiguration {
}
/**
* Creates an event serializer.
* Erstellt einen Event-Serializer.
*
* @return Event serializer
* @return Event-Serializer
*/
@Bean
@ConditionalOnMissingBean
@@ -97,12 +97,12 @@ class RedisEventStoreConfiguration {
}
/**
* Creates a Redis event store.
* Erstellt einen Redis Event Store.
*
* @param redisTemplate Redis template
* @param eventSerializer Event serializer
* @param properties Redis event store properties
* @return Event store
* @param redisTemplate Redis-Template
* @param eventSerializer Event-Serializer
* @param properties Redis Event Store Eigenschaften
* @return Event Store
*/
@Bean
@ConditionalOnMissingBean
@@ -116,12 +116,12 @@ class RedisEventStoreConfiguration {
}
/**
* Creates a Redis event consumer.
* Erstellt einen Redis Event Consumer.
*
* @param redisTemplate Redis template
* @param eventSerializer Event serializer
* @param properties Redis event store properties
* @return Event consumer
* @param redisTemplate Redis-Template
* @param eventSerializer Event-Serializer
* @param properties Redis Event Store Eigenschaften
* @return Event Consumer
*/
@Bean
@ConditionalOnMissingBean