[Java][Flight] Add caching of FlightClients to JDBC
- Vorherrschende Sprache
- Java
- Sterne
- 94
- Forks
- 152
- Ø Merge
- 3 T. 16 Std.
- Gemergte PRs (30 T.)
- 11
Beschreibung
### Describe the enhancement requested
When getFlightInfo reports a list of endpoints, the driver internally creates a FlightClient for each endpoint that reports a Location. These clients can benefit from being cached/pooled since a server will likely re-use endpoints for subsequent queries. This should likely be a configuration option.
The driver should also check if the Location at an endpoint is the same as the original location used when calling getFlightInfo and avoid creating a new FlightClient in this case.
Investigate using https://github.com/ben-manes/caffeine for caching.
### Component(s)
FlightRPC, Java
Beitragsleitfaden
Rechercherichtung
Beginne damit, den getFlightInfo-Pfad des Java JDBC-Treibers nachzuverfolgen und zu untersuchen, wie er FlightClients für zurückgegebene Locations erstellt. Untersuche Caffeine wie vorgeschlagen und definiere anschließend eine Konfigurationsoption für das Caching oder Pooling von Clients. Verifiziere, dass die ursprüngliche Location wiederverwendet wird, ohne einen doppelten Client zu erstellen. Erledigt ist dies, wenn Endpoint-Clients für nachfolgende Abfragen wiederverwendet werden und die ursprüngliche Location keinen zusätzlichen Client verursacht.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java
- Bereich
- api
- Issue-Typ
- Feature
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100