NettyNioAsyncHttpClient Channel Cache Memory Usage
- Lenguaje dominante
- Java
- Estrellas
- 2.6k
- Forks
- 1k
- Merge medio
- 2 d 9 h
- PR fusionados (30 d)
- 51
Descripción
## 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:
Guía de contribución
Línea de trabajo
Empieza reproduciendo la aplicación de larga duración descrita en la issue: comparte un NettyNioAsyncHttpClient, accede a buckets de S3 para varios clientes y observa el crecimiento de canales y memoria. Después, rastrea cómo el cliente agrupa los canales por bucket y evalúa la caché propuesta por región; debe considerarse terminado cuando la caché tenga un comportamiento acotado con muchos buckets de clientes sin romper el acceso de S3AsyncClient.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- aws, java
- Área
- networking, performance
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 35/100