Resource Event Source for Notification Based External Events
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Accessibilité débutants
- 35/100
Piste de recherche
Commencez par lire les implémentations existantes de CachingInboundEventSource, PollingEventSource et PerResourcePollingEventSource afin de comprendre leur comportement en matière d’événements et de mise en cache. Le travail est terminé lorsqu’une notification entrante sans ressource récupère et met en cache l’intégralité de la ressource externe, puis propage un événement de changement au gestionnaire d’événements.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
For Kubernetes resources we already have this cache in Informer, for external resources we have the CachingInboundEventSource for a resource oriented event coming from an external system. And two flavors of polling event source: PollingEventSource and PerResourcePollingEventSource.
What we don't have covered is the situation for an external resource when it is capable to notify about change, but the notification not contains the resource it self. Typically such external events are comming from AWS resources, like from RDS:
see: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-cloudwatch-events.sample.html
A sample event does not contains the resource itself.
( see also: Event Notification https://martinfowler.com/articles/201701-event-driven.html )
We have two options here either the dependent resource fetches the resource on reconcile and puts it into local cache. Or we prepare an even source that when receives an inbound event also fetches and caches the resource (then triggers and event).
This would be much more optimal, since we just don't fetch resource on every reconcile. So the event source logic should look like this:
sequenceDiagram
participant InboundFetchingEventSource
participant ExternalService
participant EventHandler
ExternalService->>InboundFetchingEventSource: Send Resource Changed Event
InboundFetchingEventSource->>ExternalService: Fetch The Whole Resource
InboundFetchingEventSource->>InboundFetchingEventSource: Cache The Resource
InboundFetchingEventSource->>EventHandler: Propagate Event About The Change
- Langage dominant
- Java
- Étoiles
- 944
- Forks
- 242
- Merge moyen
- 1 j 4 h
- PR mergées (30 j)
- 43
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de operator-framework/java-operator-sdk
-
Difficulté 3/5 1-2 jours Accessibilité débutants 72/100
-
Difficulté 4/5 3-5 jours Accessibilité débutants 55/100
operator-framework/java-operator-sdk#3621 · 5 commentaires ·
-
Difficulté 4/5 3-5 jours Accessibilité débutants 48/100
operator-framework/java-operator-sdk#3617 · 1 commentaire ·
-
Difficulté 4/5 3-5 jours Accessibilité débutants 38/100
operator-framework/java-operator-sdk#3615 · 1 commentaire · 3 réactions ·
-
Set baseline Java version to 21 Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 45/100
operator-framework/java-operator-sdk#3568 · 1 commentaire · 1 réaction ·
Toutes les issues de operator-framework/java-operator-sdk
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
-
bug needs triage
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 94/100
objectionary/hone-maven-plugin#1061 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
spring-projects/spring-modulith#1895 ·