Un test de benchmark en local montre qu'augmenter le nbre de workers de 3 à 5 5 génère du throttling sur les lots consécutifs et crée des erreurs.
Augmenter le Batch size réduit le nombre d'appel Grist si on reste sur un batch de 150, au delà régression et erreurs
- 3 workers + batch 50 (ancienne config) | 2min 54s | 982/982 | 0 erreurs 429
- 3 workers + batch 100 | 2min 37s | 982/982 | 0 erreurs 429
- 3 workers + batch 150 | 2min 30s | 982/982 | 0 erreurs 429
- 3 workers + batch 200 | 2min 38s | 977/982 | 5 erreurs 429
- 5 workers + batch 100 | 2min18 s | 964/982 | 18 erreurs 429
Workers : au-delà de 3 workers, l'API DS retourne des erreurs 429 (rate limiting) entraînant des dossiers manquants. 5 workers génère 18 dossiers manquants sur 982.
Batch size : augmenter le batch réduit le nombre d'appels Grist et améliore les performances jusqu'à 150. Au-delà (200), les lots trop grands saturent le rate limiter DS sur les appels parallèles.
Gain obtenu : ~14% de réduction du temps de sync vs l'ancienne config (2min 30s vs 2min 54s), avec 100% des dossiers traités.
Un test de benchmark en local montre qu'augmenter le nbre de workers de 3 à 5 5 génère du throttling sur les lots consécutifs et crée des erreurs.
Augmenter le Batch size réduit le nombre d'appel Grist si on reste sur un batch de 150, au delà régression et erreurs
Workers : au-delà de 3 workers, l'API DS retourne des erreurs 429 (rate limiting) entraînant des dossiers manquants. 5 workers génère 18 dossiers manquants sur 982.
Batch size : augmenter le batch réduit le nombre d'appels Grist et améliore les performances jusqu'à 150. Au-delà (200), les lots trop grands saturent le rate limiter DS sur les appels parallèles.
Gain obtenu : ~14% de réduction du temps de sync vs l'ancienne config (2min 30s vs 2min 54s), avec 100% des dossiers traités.