# Prevención de limitación de velocidad

**La prevención de limitación de KONNEKT** incluye dos políticas una "[control de frecuencia de actualización](https://docs.konnekt.io/es/configuration/system-settings/prevencion-de-limitacion-de-velocidad/sharepoint-throttling-prevention)" política y una "[limitación de la tasa de solicitudes](https://docs.konnekt.io/es/configuration/system-settings/prevencion-de-limitacion-de-velocidad/prevencion-de-limitacion-de-velocidad-lado-del-cliente)" política diseñada para gestionar y controlar la frecuencia con la que se realizan solicitudes a Microsoft GraphAPI, garantizando que las conexiones a SharePoint Online (SPO) se mantengan estables y rindan de forma óptima. Estas políticas son especialmente útiles para evitar un uso excesivo de recursos y mantener una experiencia de usuario fluida.

El uso de las API de Microsoft 365 está sujeto a limitaciones en cuanto a la cantidad de solicitudes por tiempo que una aplicación puede enviar. Si una aplicación usa más recursos, se le aplicará limitación. Puedes encontrar más información al respecto en la [Microsoft docs](https://learn.microsoft.com/en-us/sharepoint/dev/general-development/how-to-avoid-getting-throttled-or-blocked-in-sharepoint-online).

Dado que KONNEKT utiliza Microsoft SharePoint Online REST API y Microsoft Graph API, puede ocurrir que las API de Microsoft limiten el uso de KONNEKT. Si a una aplicación se le aplica limitación, la API correspondiente (p. ej., SPO REST API) le indica a KONNEKT que debe esperar un período de tiempo definido. Esto comienza con unos segundos y puede llegar a minutos, dependiendo del uso. Los impactos para KONNEKT pueden ser una navegación o carga/escritura de archivos lenta. Si la limitación se prolonga durante minutos, dará lugar a mensajes de error indicando que la unidad no está actualmente disponible.

KONNEKT dispone de varios mecanismos para reducir la aparición de limitaciones, que se aplican automáticamente.&#x20;

## Escenarios comunes para la prevención de limitación

### **Escenario 1: cargas masivas de datos o migración de datos**

Cuando un usuario intenta cargar un gran número de archivos en / o realizar una migración de datos dentro de SPO en un corto período de tiempo, el dispositivo puede alcanzar el límite especificado.

### **Escenario 2: operaciones de lectura intensivas**

Si un usuario realiza operaciones de lectura intensivas, como consultar o buscar en un directorio grande (> 1000 elementos), el dispositivo puede alcanzar el límite especificado.

&#x20;Ejemplos:

* Usar la búsqueda del Explorador de archivos en carpetas grandes
* Desplazarse por carpetas con numerosos archivos gráficos o PDF&#x20;

### **Escenario 3: consultas de permisos**&#x20;

Desde la versión 2.10, KONNEKT también comprueba los permisos por carpeta y archivos, ya que estas consultas consumen un mayor número de unidades de recurso en comparación con otras operaciones. El sistema puede alcanzar el límite especificado mucho más rápido, lo que puede activar la prevención de limitación. Las consultas de permisos no se activarán si "[Prevención de limitación de SharePoint](https://app.gitbook.com/s/-M8zLVuKYctMIUr68_fs/configuration/system-settings/throttling-prevention/sharepoint-throttling-prevention)" está establecido en 'Alto'.

{% hint style="warning" %}
En entornos con mucha carga, puede que todas las medidas no sean suficientes para evitar la limitación.

KONNEKT fue creado para el trabajo de oficina habitual. Si utilizas archivos de gran volumen (p. ej., edición de vídeo, diseño gráfico, CAD) o lees/escribes gigabytes de datos, KONNEKT (& SPO) puede no ser la herramienta adecuada.

Consulta también nuestros [casos de uso](https://docs.konnekt.io/es/readme#use-cases).
{% endhint %}

## **Unidades de recurso**

Cada tipo de solicitud GraphAPI consume una cantidad diferente de unidades de recurso:

* Lecturas de un solo elemento: 1 unidad de recurso cada una
* Operaciones de escritura y consultas de directorio: 2 unidades de recurso cada una
* Consultas de permisos: 5

Para más detalles, consulta:\
<https://learn.microsoft.com/en-us/sharepoint/dev/general-development/how-to-avoid-getting-throttled-or-blocked-in-sharepoint-online>

## ¿Cómo puedo evitar la limitación?

#### Las siguientes circunstancias favorecen la limitación:

* Uso de herramientas de terceros para copias de seguridad de SPO, especialmente durante el horario laboral
* Uso de herramientas que rastrean todo tu sistema de archivos (como el renderizador de vista previa, etc.)
* Uso de carpetas muy grandes con >1000 archivos en el primer nivel de la carpeta
* Uso excesivo de la búsqueda del Explorador de archivos en Site Collections o Document Libraries grandes

{% hint style="info" %}
Considera la siguiente configuración y acciones para todos los usuarios de un tenant de M365 sin excepciones.
{% endhint %}

#### Para evitar la limitación:

* No ejecutes copias de seguridad de SPO durante el horario laboral.
* Si la búsqueda del Explorador de archivos es inevitable: optimiza las búsquedas del Explorador de archivos, céntrate en carpetas o subcarpetas específicas para limitar las solicitudes a GraphAPI
* Mantenimiento regular: archiva o elimina archivos, carpetas, Document Libraries y Site Collections obsoletos.
* Evita el uso excesivo de la búsqueda del Explorador de archivos en Site Collections o Document Libraries grandes
* No utilices ningún renderizador de vista previa para los recursos de KONNEKT. Consulta también [aquí](https://docs.konnekt.io/es/configuration/system-settings/offline-attribute). Además, puedes configurar el [Filtro sin conexión](https://docs.konnekt.io/es/configuration/offline-attribute#exclude-dedicated-file-types-from-offline-attribute-filter) para la extensión de archivo "YYY" (que no existe), para evitar que el Explorador de archivos de Windows genere vistas previas de archivos PDF.
* Segmenta tus datos (no demasiados archivos en el primer nivel de una carpeta).
* Configura la política "[Prevención de limitación de SharePoint](https://docs.konnekt.io/es/configuration/system-settings/prevencion-de-limitacion-de-velocidad/sharepoint-throttling-prevention)" en "Alto" - solo recomendado hasta la versión 2.10.2 de KONNEKT
* A partir de la versión 2.11.0, recomendamos habilitar "[limitación del lado del cliente](https://docs.konnekt.io/es/configuration/system-settings/prevencion-de-limitacion-de-velocidad/prevencion-de-limitacion-de-velocidad-lado-del-cliente)" y configurar la política "[Prevención de limitación de SharePoint](https://docs.konnekt.io/es/configuration/system-settings/prevencion-de-limitacion-de-velocidad/sharepoint-throttling-prevention)" en "Auto".

Cuando activas el [registro de KONNEKT en "debug"](https://docs.konnekt.io/es/configuration/logging#log-level), verás entradas de registro con "`ThrottlingHook: Need to wait Xs before start`" (donde X representa la cantidad de segundos que SPO nos pide esperar).

Las entradas de registro que contienen "`[Sharepoint] UpdateDrives: Skipping volume due to throttling prevention.`" NO están causadas por la limitación de SharePoint. Indican operaciones normales para evitar la limitación; no hay de qué preocuparse. ;-)

## **Cómo funciona**

La política "[control de frecuencia de actualización](https://app.gitbook.com/s/-M8zLVuKYctMIUr68_fs/configuration/system-settings/throttling-prevention/sharepoint-throttling-prevention)" limita las solicitudes mediante ciclos de actualización mejorados, por ejemplo, actualizando los Site Collections del usuario.

La política "[limitación de la tasa de solicitudes](https://docs.konnekt.io/es/configuration/system-settings/prevencion-de-limitacion-de-velocidad/prevencion-de-limitacion-de-velocidad-lado-del-cliente)La política "" funciona supervisando el número de solicitudes y las unidades de recurso correspondientes realizadas dentro de una ventana de tiempo especificada y aplicando límites a estas solicitudes. Esta política, “[limitación del lado del cliente](https://docs.konnekt.io/es/configuration/system-settings/prevencion-de-limitacion-de-velocidad/prevencion-de-limitacion-de-velocidad-lado-del-cliente)”, incluye **suaves** y **estrictos** límites:

* **Límite suave**:\
  Cuando se alcanza el límite suave, el sistema comenzará a limitar las solicitudes. Esto significa que la mayoría de las operaciones se retrasarán durante un corto período (por ejemplo, 2 segundos), y el nivel de prevención de limitación cambiará a ALTO. Algunas operaciones, como los trabajos de carga oportunista y las operaciones de lectura anticipada, se pospondrán hasta que la cantidad de solicitudes vuelva a situarse por debajo del límite suave.
* **Límite duro**:\
  Cuando se alcanza el límite estricto, el sistema dejará de enviar cualquier solicitud. La aplicación mostrará un mensaje de error hasta que se alcance el final de la ventana de tiempo.

{% hint style="warning" %}
Usa "Límite estricto" solo cuando sea necesario, ya que impide que KONNEKT acceda y se comunique con los endpoints de Microsoft.
{% endhint %}
