aws / aws/aws-sdk-java-v2

NettyNioAsyncHttpClient Channel Cache Memory Usage

Offen
#2,247 9 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
bug p3
Vorherrschende Sprache
Java
Sterne
2.6k
Forks
1k
Ø Merge
2 T. 9 Std.
Gemergte PRs (30 T.)
51

Beschreibung

## Describe the issue
We're using `S3AsyncClient` to process customer data from S3. As such we create shared instance of `NettyNioAsyncHttpClient` for s3 clients. The `NettyNioAsyncHttpClient` holds pool of netty channels for each bucket we process. This can grow significantly with number of customers. Could there be such cache per region?

## Steps to Reproduce
Long running app periodically accessing customers S3 buckets. The memory grows with number of customers.

## Your Environment

* AWS Java SDK version used: 2.15.45
* JDK version used: 11
* Operating System and version:

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne damit, die in der Issue beschriebene lang laufende Anwendung zu reproduzieren: Verwende einen NettyNioAsyncHttpClient gemeinsam, greife für mehrere Kunden auf S3-Buckets zu und beobachte das Wachstum von Channels und Speicher. Verfolge dann, wie der Client Channels pro Bucket poolt, und evaluiere den vorgeschlagenen Cache pro Region; als erledigt gilt, dass der Cache über viele Kunden-Buckets hinweg ein begrenztes Verhalten zeigt, ohne den Zugriff von S3AsyncClient zu beeinträchtigen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
aws, java
Bereich
networking, performance
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.