Procedimientos recomendados de integración

Azure DevOps Services

Las herramientas e integraciones entre los servicios mejoran la eficiencia de Azure DevOps Services. Si no tiene cuidado, las herramientas automatizadas pueden salir del control de la ejecución de una alta tasa de solicitudes. Las solicitudes hacen que Azure DevOps aplique los límites de velocidad a su organización. Para ayudar a reducir el riesgo de alcanzar los límites de velocidad, siga estos procedimientos recomendados al usar las API REST para integrarse con Azure DevOps.

Insertar solo elementos de trabajo accionables

Inserte solo elementos accionables en Azure DevOps que el equipo planee interactuar o abordar en el futuro. Mantenga los elementos de trabajo fuera de Azure DevOps hasta que sea necesario. Por ejemplo, no intente almacenar datos de telemetría en Azure DevOps.

Mantenimiento de su propio almacén de datos

No agregue elementos de trabajo a Azure DevOps por motivos de tenerlos todos en un solo lugar. Azure DevOps Services no está diseñado como un servicio de almacenamiento de datos. Mantenga su propio almacén de datos.

Procesamiento por lotes de los cambios

Realizar operaciones únicas es lenta y costosa, que es la causa principal de problemas de rendimiento y limitación de velocidad. Procesamiento por lotes de los cambios en una sola llamada. Para obtener más información, consulte nuestra documentación por lotes y el código de ejemplo.

Limitar las revisiones

Muchas revisiones en un único elemento de trabajo crean hinchazón y causan problemas de rendimiento. Se recomienda realizar las siguientes tareas:

  • Reduzca las actualizaciones mediante el procesamiento por lotes de los cambios de campo. No actualice solo un campo a la vez.
  • Si tiene cambios en varios elementos de trabajo, realice un lote de esos cambios en una sola acción.
  • Mantenga el número de revisiones en un mínimo para evitar los límites de revisión.

Nota:

Un límite de revisión de elemento de trabajo de 10 000 está en vigor para las actualizaciones realizadas a través de la API REST. Este límite restringe las actualizaciones de la API REST, pero las actualizaciones del portal web no se ven afectadas.

Optimización de consultas

Optimice las consultas para devolver un número modesto de resultados. Las condiciones complejas y los filtros pueden dar lugar a consultas de larga duración. Mantenga el tiempo de ejecución de las consultas en menos de 30 segundos para evitar errores de umbral.

Sugerencias de rendimiento de las consultas

  • Coloque una cláusula de fecha o límite de intervalo cerca de la parte superior de una consulta siempre que sea posible.
  • Reduzca el número de cláusulas que usan el operador Ever .
  • Reduzca el número de cláusulas que usan el operador Contains , excepto etiquetas.
    • Use el operador Contains Words cuando esté disponible.
    • No use el operador Contains en campos de texto largos, ya que es costoso.
  • Evite los operadores "<>" y no siempre que sea posible.
  • Evite usar el operador In Group para grupos grandes.
  • Minimice el número de operadores Or y asegúrese de que todavía tiene un ámbito de nivel superior antes de usarlo.
  • Evite usar una cláusula OR entre un operador In Group y rutas de acceso de iteración o área.
  • Reduzca el número de cláusulas generales para lograr su objetivo siempre que sea posible.
  • Evite ordenar por cualquier cosa que no sea campos principales, como el identificador, siempre que sea posible.
  • Use un campo personalizado en los filtros si desea ordenar en un campo personalizado.
  • Especifique un proyecto si es posible. De lo contrario, la consulta se limita a toda la colección y podría tardar considerablemente más tiempo de lo que necesita. Desactive "Consultar entre proyectos en la esquina superior derecha" del editor de consultas.

Consultar por los proyectos

  • Especifique el proyecto que busca si la consulta requiere búsqueda entre proyectos.
  • Use etiquetas en lugar de palabras clave siempre que sea posible, a menos que busque texto parcial de una cadena.

Control de errores correctamente

Novedades y las consultas producen un error cuando los límites de recursos o la frecuencia de uso cruzan el umbral de límite. Por ejemplo, una consulta que se ejecuta durante más de 30 segundos devuelve el siguiente error:

VS402335: The timeout period (30 seconds) elapsed prior to completion of the query or the server is not responding.

Al consumir las API REST, asegúrese de diseñar el código para controlar los errores correctamente.

Limite el número de vínculos por elemento de trabajo tanto como sea posible, para evitar el cumplimiento de los límites de vínculos.

Importante

Tenemos previsto aplicar límites de vínculo y revisión de elementos de trabajo en un futuro próximo. Estos límites se determinan mediante la supervisión del rendimiento y los comentarios de los clientes.

No use consultas para la generación de informes

El uso de consultas y llamadas individuales a elementos de trabajo es la mejor manera de obtener los límites de velocidad que se aplican a su organización. No ejecute consultas para devolver listas grandes de elementos de trabajo. Use en su lugar los vínculos de elementos de trabajo de informes y las API REST de revisiones de elementos de trabajo.

Para obtener más información, consulte nuestro ejemplo de C# en GitHub.