¿Cómo soluciono los problemas de velocidad lenta o irregular durante las operaciones de carga y descarga en Amazon S3?

6 minutos de lectura
0

Quiero solucionar problemas de alta latencia o velocidades irregulares durante las operaciones de carga y descarga en Amazon Simple Storage Service (Amazon S3) desde una red o equipo específicos.

Resolución

Compruebe lo siguiente para identificar y mitigar los factores que pueden provocar velocidades lentas o irregulares durante las operaciones de carga y descarga en Amazon S3:

  • La ubicación del cliente que hace las solicitudes
  • El proveedor de servicios de Internet (ISP) del cliente
  • La red del cliente
  • Los recursos del cliente
  • La tasa de solicitudes a Amazon S3
  • Los registros de acceso al servidor de Amazon S3 para determinar el tiempo de inversión

La ubicación del cliente que hace las solicitudes

Utilice buckets de Amazon S3 que estén lo más cerca posible de su cliente desde un punto de vista geográfico. Se puede acceder a los buckets a una escala global, pero residen en una región de AWS específica. La distancia geográfica entre la solicitud y el bucket contribuye al tiempo que tarda en recibirse una respuesta.

Puede probar el efecto de la distancia geográfica entre el cliente y el bucket de S3. Por ejemplo, puede lanzar una instancia de Amazon Elastic Compute Cloud (Amazon EC2) en la misma región de AWS que el bucket. A continuación, lance otra instancia en una región diferente. Pruebe la carga y descarga del mismo archivo con ambas instancias y, a continuación, compare el rendimiento entre las dos regiones.

Para reducir la distancia entre el cliente y el bucket de S3, transfiera sus datos a un bucket de otra región que esté más cerca del cliente. Puede configurar la replicación entre regiones para que los datos del bucket de origen se repliquen en el bucket de destino de la nueva región. Como otra opción, considere migrar el cliente más cerca del bucket de S3.

El proveedor de servicios de Internet (ISP) del cliente

Revise la ruta de la red para detectar cualquier problema que afecte a la forma en que la conexión recorre Internet. Estos problemas pueden incluir la pérdida de paquetes, un gran número de saltos u otros problemas relacionados con el ISP.

Herramientas como mtr y traceroute pueden ayudar a proporcionar pistas sobre la posible pérdida de paquetes. También pueden proporcionar la latencia de los paquetes que se envían al host remoto. Además, estas herramientas pueden ayudar a identificar si hay un salto de red que cause una mayor latencia.

Por ejemplo, el siguiente comando traceroute de Linux usa el puerto 80 de TCP para probar la conectividad con el punto de conexión regional us-west-2 (Oregón):

sudo traceroute -P TCP -p 80 s3.us-west-2.amazonaws.com

En los sistemas operativos Windows, puede utilizar una herramienta similar llamada tracert.

**Nota:**Muchos dispositivos de red no responden al ICMP. Para realizar una prueba similar a las solicitudes de Amazon S3, asegúrese de ejecutar un comando traceroute o mtr de TCP en el punto de conexión regional del bucket.

Si la ruta de Internet desde el cliente a Amazon S3 no es óptima, considere la posibilidad de utilizar la aceleración de transferencias de Amazon S3, que aprovecha las ubicaciones periféricas de Amazon CloudFront. Consulte la herramienta de comparación de velocidades de aceleración de transferencias de Amazon S3 para ver si la aceleración de transferencias puede mejorar el rendimiento de su caso práctico.

**Nota:**Si activa la aceleración de transferencias, es posible que se apliquen cargos adicionales por transferencia de datos. Consulte los precios de Amazon S3 para las transferencias de datos.

La red del cliente

Para asegurarse de que la red de su cliente esté en buen estado, consulte las inspecciones internas de paquetes, el análisis antivirus o la administración del acceso a la red. Además, consulte la forma en que su cliente o aplicación gestiona la resolución de DNS y el almacenamiento en caché.

Para beneficiarse de la naturaleza distribuida y la disponibilidad de Amazon S3, evite almacenar en caché la resolución de DNS durante períodos prolongados.

Los recursos del cliente

Es posible que se haya generado latencia en su aplicación o en la forma en que el host que realiza las solicitudes gestiona las solicitudes enviadas y las respuestas recibidas. Como práctica recomendada, confirme que no se esté produciendo una contienda de recursos en el host que pueda estar contribuyendo a la latencia general. Por ejemplo, la contienda de recursos dentro del host podría estar relacionada con la CPU, la memoria o el ancho de banda de la red.

Puede comprobar el uso de los recursos durante la transferencia de datos en la mayoría de los sistemas del cliente mediante herramientas como el supervisor de recursos o el comando top. Las herramientas disponibles dependen del sistema operativo.

El dispositivo o sistema de almacenamiento del cliente también puede ser una fuente de latencia. Las operaciones de lectura o escritura en el dispositivo de almacenamiento del cliente que experimentan una latencia elevada pueden afectar al rendimiento de las operaciones de carga o descarga en Amazon S3. Debe solucionar los problemas de IOPS del dispositivo de almacenamiento desde el lado del cliente. Puede analizar el rendimiento de Amazon S3 con la métrica FirstByteLatency de Amazon CloudWatch.

**Nota:**Las métricas de solicitud de Amazon S3 CloudWatch se facturan con la misma tarifa que las métricas personalizadas.

FirstByteLatency muestra cuánto tiempo tarda Amazon S3 en procesar la solicitud del cliente y, a continuación, comienza a enviar la respuesta al cliente. La métrica de CloudWatch ofrece una perspectiva del rendimiento a nivel de bucket. Puede acotar su investigación mediante los registros de acceso al servidor de Amazon S3. Para obtener más información, consulte la sección Registros de acceso al servidor de Amazon S3 para determinar el tiempo de inversión.

La tasa de solicitudes a Amazon S3

De forma predeterminada, los buckets de S3 pueden admitir miles de solicitudes por segundo y por prefijo. Si un cliente recibe respuestas de error 5xx de HTTP desde Amazon S3, esto puede indicar que se ha superado la tasa de solicitudes admitida por prefijo. Para solucionar los errores 5xx, consulte ¿Cómo soluciono un error 500 o 503 de HTTP de Amazon S3?

Los registros de acceso al servidor de Amazon S3 para determinar el tiempo de inversión

Puede activar el registro de acceso al servidor de Amazon S3 para revisar métricas del tiempo de inversión. El tiempo de inversión es el tiempo transcurrido entre la recepción del último byte de la solicitud y el envío del primer byte de la respuesta. Se trata de una métrica de tiempo hasta el primer byte (TTFB). Puede utilizar el tiempo de inversión para determinar la cantidad de tiempo que tarda la operación desde la perspectiva de Amazon S3. A continuación, puede evaluar otras latencias ajenas a Amazon S3 que podrían estar contribuyendo a una carga o descarga lentas en su totalidad.

Si observa una latencia superior a la habitual, se recomienda volver a intentar la solicitud en lugar de esperar a que se complete. Para obtener más información sobre esta guía y otras recomendaciones de rendimiento, consulte las pautas de rendimiento de Amazon S3.

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace un año