View a markdown version of this page

Preguntas frecuentes sobre los protocolos compatibles con CloudWatch - Amazon CloudWatch

Preguntas frecuentes sobre los protocolos compatibles con CloudWatch

Los SDK de CloudWatch comenzar a utilizar dos protocolos adicionales: JSON 1.0 de AWS y Smithy RPC v2 CBOR. Estos protocolos ofrecen un rendimiento superior al de la consulta de AWS, que utilizaban anteriormente los SDK y las CLI de CloudWatch. Los AWS SDK priorizarán el protocolo que tenga el mejor rendimiento para cada lenguaje.

¿Qué es el protocolo JSON de AWS y en qué se diferencia de las solicitudes y respuestas de las API de CloudWatch existentes?

JSON es uno de los formatos de datos más utilizados y aceptados para la comunicación entre sistemas heterogéneos. CloudWatch utiliza JSON como medio de comunicación entre un cliente de SDK de AWS (por ejemplo, Java, Python, Golang o JavaScript) y el servidor de CloudWatch. Una solicitud HTTP de una operación de la API de CloudWatch acepta entradas en formato JSON. La operación de CloudWatch se ejecuta y la respuesta de la ejecución se comparte de nuevo con el cliente del SDK en formato JSON. En comparación con las consultas de AWS, JSON es más eficiente a la hora de transportar datos entre el cliente y el servidor.

  • El protocolo JSON de AWS es mediador entre el cliente y el servidor de CloudWatch.

  • El AWS SDK de CloudWatch gestiona la serialización (convertir el objeto en formato JSON) y la deserialización (convertir el formato JSON en objeto) entre el cliente y el servidor de CloudWatch.

¿Qué es el protocolo Smithy RPC v2 CBOR y en qué se diferencia de las solicitudes y respuestas de las API de CloudWatch existentes?

Smithy RPC v2 CBOR (Concise Binary Object Representation) es un protocolo desarrollado por Amazon para una transmisión de datos más eficiente. Es un formato de datos diseñado para mantener el tamaño de los mensajes compacto y permitir que el formato evolucione sin necesidad de negociar versiones entre sistemas. La diferencia clave con la codificación JSON es que JSON usa texto legible por humanos (como “nombre”: “John”), mientras que CBOR usa un formato binario (secuencias de unos y ceros). Este enfoque binario crea paquetes de datos más pequeños que viajan más rápido por la red y reduce el tiempo de serialización, ya que las computadoras procesan los datos binarios directamente.

  • El protocolo CloudWatch RPC v2 CBOR es mediador entre el cliente y el servidor de CloudWatch.

  • El SDK de CloudWatch gestiona la serialización (convertir el objeto en el formato CBOR) y la deserialización (convertir el formato CBOR en objeto) entre el cliente y el servidor de CloudWatch.

¿Cómo puedo comenzar a utilizar los nuevos protocolos para CloudWatch?

Para comenzar, utilice la versión más reciente de la CLI o el AWS SDK para que utilice el protocolo compatible más reciente con CloudWatch. Actualice el AWS SDK a la versión especificada o a cualquier versión posterior.

Compatibilidad del protocolo de cliente del SDK
Idioma Protocolo Versiones del SDK
C++ RPC v2 CBOR 1.11.708
Golang 2.x RPC v2 CBOR 1.53.0
Java 1.x RPC v2 CBOR 1.12.795
Java 2.x RPC v2 CBOR 2.40.6
JavaScript v3.x JSON 1.0 de AWS 3.949.0
.NET v3 JSON 1.0 de AWS 3.7.1182.0
.NET v4 RPC v2 CBOR 4.0.150.0
PHP JSON 1.0 de AWS 3.367.0
Python-boto3 JSON 1.0 de AWS 1.42.7
Python-botocore JSON 1.0 de AWS 1.42.7
AWS CLI v1 JSON 1.0 de AWS 1.43.13
AWS CLI v2 JSON 1.0 de AWS 2.32.14
Ruby JSON 1.0 de AWS 1.126.0
Powershell JSON 1.0 de AWS 5.0.114
Rust RPC v2 CBOR 1.100.0
Swift RPC v2 CBOR 1.6.14
Kotlin RPC v2 CBOR 1.5.100

¿Cuáles son los riesgos de activar estos nuevos protocolos para mis cargas de trabajo de CloudWatch?

Se espera que la migración a estas nuevas versiones del SDK sea totalmente transparente y sencilla para los clientes. Hay un cambio de comportamiento conocido entre los protocolos relacionado con el tratamiento de los valores null en las listas: las llamadas a la API de CloudWatch con entradas de lista que pueden contener valores null se gestionarán de forma diferente en los protocolos JSON de AWS y Smithy RPC v2 CBOR en comparación con el protocolo de consultas de AWS anterior: en el protocolo de consultas de AWS, los valores nulos de las listas se eliminan, mientras que en los protocolos JSON y CBOR se propagan a través de las llamadas a la API.

Además, si utiliza una implementación personalizada del AWS SDK o una combinación de clientes personalizados y AWS SDK para interactuar con CloudWatch que genere respuestas basadas en consultas de AWS (también conocidas como basadas en XML), es posible que sea incompatible con el protocolo JSON de AWS o CBOR. Si encuentra algún problema, póngase en contacto con AWS Support.

¿Qué sucede si ya tengo la última versión del SDK de AWS, pero mi solución de código abierto no admite JSON o CBOR?

Debe cambiar la versión del SDK por una anterior. Consulte la sección ¿Cómo puedo comenzar a utilizar los nuevos protocolos para CloudWatch? y seleccione una versión anterior a la indicada. Si cambia el AWS SDK por la versión anterior, las API de CloudWatch utilizarán el protocolo de consultas de AWS.

Qué regiones se admiten en los protocolos JSON de AWS y CBOR que se utilizan en las API de CloudWatch

CloudWatch admite los protocolos JSON de AWS y CBOR en todas las regiones de AWS en las que está disponible CloudWatch.

¿Qué mejoras de latencia puedo esperar al actualizar a las versiones del SDK de AWS especificadas para CloudWatch mediante los protocolos más nuevos?

JSON y CBOR proporcionan una latencia y un uso de CPU de hasta un 80 % inferiores en comparación con las consultas de AWS. Ambos protocolos son más de un 20 % más eficientes en el uso del ancho de banda de la red.

¿Quedará obsoleto el protocolo de consultas de AWS?

El protocolo de consultas de AWS continuará siendo compatible. Puede continuar utilizando el protocolo de consultas de AWS siempre que la versión del AWS SDK esté establecida en cualquier versión anterior a la que aparece en ¿Cómo puedo comenzar a utilizar los nuevos protocolos para CloudWatch?.

¿Dónde puedo encontrar más información sobre los protocolos JSON de AWS y Smithy RPC v2 CBOR?

Puede encontrar más información sobre el protocolo JSON en la documentación de Smithy sobre el protocolo JSON 1.0 de AWS y sobre CBOR en la documentación de Smithy sobre el protocolo RPC v2 CBOR de AWS.

Para más información sobre las solicitudes de API de CloudWatch, consulte Hacer solicitudes de API en la Guía de referencia de API de CloudWatch.