Solicitudes HTTP paralelas con Retrofit
Tengo una aplicación de Android que está utilizando actualmente la biblioteca Volley
para hacer solicitudes de red y mostrar las imágenes descargadas con NetworkImageView
.
Me gustaría probar las capacidades de Retrofit
y como tengo que ejecutar muchas peticiones (miles), estoy un poco preocupado por la ejecución paralela. Volley
maneja las solicitudes paralelas con el RequestQueue
que limita las solicitudes de ejecución simultáneas a cuatro, mientras que las otras solicitudes están en cola esperando a ser ejecutadas. En las documentaciones de Retrofit
no he encontrado ninguna manera de manejar el número de solicitudes simultáneas y sospecho que tales detalles son dejados al desarrollador en esta biblioteca.
- Retrofit 1.6: Call RestService con diferentes (TCP) -Ports
- Cómo POST JSON todo en bruto en el cuerpo de una solicitud de Retrofit?
- Android Retrofit devolver estado 500 error interno del servidor
- Error de Retrofit de Android al generar una solicitud
- ¿Cómo realizar una solicitud DELETE sin tipo de devolución o devolución de llamada?
¿Es esto correcto? Si es así, ¿hay alguna implementación / biblioteca orientada a Android disponible? De lo contrario, ¿cuáles son las mejores prácticas para manejar solicitudes paralelas?
- REST y SOAP webservice en android
- Iniciar sesión en Retrofit 2.0
- Notificaciones de la API REST de Google Drive no funcionan para cambios en la carpeta de aplicaciones
- ¿Cómo usar el retrofit como singleton mientras se usa el convertidor de gson?
- ¿Cómo hacer frente a múltiples puntos finales de API usando Retrofit?
- Cómo implementar OAuth 2.0 como autenticación basada en tokens para API de reposo a la que se accede desde aplicaciones web móviles y javascript
- Adaptador de sincronización sin cuenta
- Retrofit: 500 error de servidor interno
Retrofit utiliza un Executor
para las solicitudes de cola.
El valor predeterminado utiliza Executors.newCachedThreadPool
que permite hilos ilimitados. Esto se ajusta a la mayoría de los casos de uso, ya que normalmente sólo tendría una o dos solicitudes que ocurran a la vez.
Sin embargo, puede cambiar este comportamiento suministrando el suyo propio al crear el RestAdapter
. Llamar a setExecutors
y pasar en un ejecutor que utiliza un grupo confinado de hilos (limitado a cualquier número que le gustaría). Para el segundo argumento, simplemente pasar una nueva instancia de MainThreadExecutor
para que las devoluciones de llamada sucedan en el subproceso principal.
- ¿Qué pasó con Android aapt?
- ¿Hay una manera de desactivar la aceleración de hardware sólo para android 4.0.3?