Pregunta

Acabamos de agregar un Autoupdater en nuestro software y obtuvimos un informe de errores que decía que el Autoupdate no se completaría correctamente porque la suma de verificación SHA1 del archivo descargado no coincidía.Estamos alojados en Amazon S3...

O hay algún problema con mi código o con S3.

Releí mi código en busca de cosas sospechosas y escribí un script simple descargando y verificando la suma de verificación del archivo descargado, y de hecho obtuve algunos errores de vez en cuando (1 de 40 ayer).Hoy parece estar bien.

¿Experimentaste ese tipo de problema?¿Existe algún tipo de solución alternativa?

Información extra:Las pruebas se realizaron en Japón.

¿Fue útil?

Solución

Aparte del tiempo de inactividad de hace unas semanas.Ninguno que yo haya oído hablar.
Hicieron un buen trabajo considerando que la única vez que estuvo inactivo fue debido a un oscuro error del servidor que se extendió por toda la nube.Fueron muy abiertos al respecto y lo resolvieron tan pronto como se enteraron (sucedió durante un fin de semana, iirc).

Entonces son bastante confiables.Mi consejo es que verifiques tu código.Y comuníqueselo al soporte de Amazon si aún sigue siendo un problema.

Otros consejos

El S3 de Amazon ocasionalmente fallará con errores durante las cargas o descargas, generalmente "500:Errores del servidor interno.La tasa de error suele ser bastante baja, pero puede aumentar si el servicio tiene una gran carga.La tasa de error nunca es del 0%, por lo que incluso en el mejor de los casos, una solicitud ocasional fallará.

¿Estás comprobando el código de respuesta HTTP en tu actualizador automático?De lo contrario, debe verificar que la descarga se realizó correctamente (HTTP 200) antes de realizar una suma de verificación.Idealmente, su aplicación debería volver a intentar las descargas fallidas, porque los errores transitorios son una "característica" inevitable de S3 con la que los clientes deben lidiar.

Vale la pena señalar que si sus clientes reciben errores 500, probablemente no verá ninguna evidencia de estos en los registros del servidor S3.Estos errores parecen ocurrir antes de que la solicitud llegue al componente de registro del servicio.

Bien, todo esto ya es un poco antiguo, pero es como referencia.Acabo de ejecutar la migración de datos de varios gigas de datos desde un servidor EC2 directamente a s3.Recibo 500 errores aproximadamente cada 10 minutos, lo que representa una tasa de error de aproximadamente el 1% de los PUT.Entonces, sí, S3 tiene un problema con 500 errores.

Sin embargo, no he hecho mucho en cuanto a GET, así que no puedo comentar.

Estoy de acuerdo, sería una buena idea verificar cuatro veces su código.No digo que no pueda suceder, pero no creo haberlo visto nunca y ya he usado bastante bien el S3.Sin embargo, administré mal las excepciones/interrupciones de conexión varias veces y terminé con piezas que no coincidían con lo que esperaba.

Me sorprendería bastante si realmente enviaran datos incorrectos, pero, como siempre, todo es posible.

Nunca he oído hablar de un problema durante la descarga.Eso es raro.Recibo TONELADAS de 500 mensajes de error interno del servidor al cargar.Por eso tengo un demonio que carga mientras el usuario hace otra cosa.

No parece haber algo en su código, tal vez realmente haya algún problema con S3 (o con S3->Japón).

Puede intentar iniciar un servidor EC2 y simplemente ejecutar la prueba desde allí (el tráfico no le costará dinero, ¡así que use todo lo que quiera!) y vea si obtiene errores.Si lo haces, entonces no tendrás suerte y S3 no es para ti :)

¡Buena suerte!

Más que enviar datos incorrectos, creo que recibí un ERROR403.Si lo intento de nuevo, normalmente está bien.

Y estoy de acuerdo :Vi muchos informes sobre personas que hablaban de que Amazon estaba totalmente caído, pero nadie hablaba de un error "a veces se rechaza mi acceso", así que supongo que podría haber un error de mi parte.Acabo de configurar el registro en Amazon.

¡Gracias de todas formas!Seguiré tu consejo y dejaré de culpar al "otro".

De vez en cuando recibo errores 404 inesperados con objetos GET que forman parte de una LISTA anterior pero nuevos en el depósito, y otros misceláneos.errores (por ejemplo:403 en mi identificación de acceso y clave secreta), pero nada catastrófico.

Mi código se ejecuta en el lado del servidor, por lo que he implementado un manejo y registro de errores sólidos.Creo que esto es algo sabio de hacer. en cualquier momento tiene un servidor en la red comunicándose con otro servidor.:PAG

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top