Partnerzy ograniczają liczbę operacji w jednostce czasu. Przekroczenie kończy się odrzuceniem żądań, a w skrajnym przypadku blokadą konta.
Skutki przekroczenia
Odrzucenie żądań, czasowa blokada, w skrajnych przypadkach zawieszenie dostępu. Integracja ponawiająca próby natychmiast po odrzuceniu pogłębia problem.
Skutki bywają odłożone w czasie. Blokada założona w nocy podczas masowej aktualizacji ujawnia się rano, gdy nie da się pobrać zamówień ani nadać przesyłek. Dlatego operacje ciężkie i operacje bieżące warto rozdzielić, żeby jedne nie odbierały przepustowości drugim.
Jak zwykle działa limit
Zasada bywa różna u każdego partnera: liczba żądań w oknie czasowym, liczba równoległych połączeń, czasem osobny limit dla operacji ciężkich. Wartości trzeba odczytać z dokumentacji i potwierdzić w praktyce, bo opis rzadko bywa kompletny. Część partnerów podaje w odpowiedzi, ile żądań zostało — to najlepsze źródło informacji, bo działa niezależnie od dokumentacji.
Reakcja na odrzucenie
Partner zwykle wskazuje, jak długo czekać. Warto to uszanować i wstrzymać wysyłkę, zamiast ponawiać w pętli.
Wstrzymanie powinno dotyczyć wszystkich zadań kierowanych do tego partnera, nie tylko tego jednego. Inaczej pozostałe wątki dalej pukają do zamkniętych drzwi i przedłużają blokadę. Mechanizm najłatwiej osadzić w kolejce zadań, która i tak zarządza kolejnością wykonania.
Operacje zbiorcze
Jeśli partner pozwala przesłać sto pozycji jednym żądaniem, aktualizacja katalogu przestaje być problemem. Wysyłanie pojedynczych żądań na każdą pozycję wyczerpuje limit natychmiast.
Operacje zbiorcze mają jedną pułapkę: odpowiedź dotyczy całej paczki. Trzeba sprawdzić, czy partner odrzuca całość przy jednym błędnym rekordzie, czy zwraca listę pozycji nieprzyjętych. Od tego zależy, jak obsłużyć poprawki.
Rozłożenie w czasie
Masowa aktualizacja rozłożona na godziny nocne mieści się w limicie i nie koliduje z bieżącą pracą.
Warto tylko sprawdzić, czy okno nocne nie pokrywa się z pracami serwisowymi partnera. Aktualizacja uruchomiona w trakcie jego przerwy technicznej kończy się serią błędów i pełną kolejką nad ranem.
Wysyłać tylko zmiany
Najskuteczniejsza optymalizacja. Aktualizowanie wyłącznie pozycji, które faktycznie się zmieniły, zwykle redukuje liczbę operacji o rząd wielkości.
Wymaga to pamiętania, co i kiedy wysłano. Porównanie z ostatnim wysłanym stanem jest pewniejsze niż poleganie na dacie modyfikacji w systemie źródłowym, bo ta bywa aktualizowana przy operacjach, które niczego nie zmieniają.
Kilka integracji, jeden limit
Limit dotyczy zwykle konta, nie pojedynczej integracji. Dwa niezależne rozwiązania korzystające z tego samego konta potrafią wyczerpać go razem.
Dlatego warto wiedzieć, co jeszcze łączy się z tym kontem — bywa, że jest to narzędzie uruchomione przy okazji innego wdrożenia i o którym nikt już nie pamięta.
Gdy limit naprawdę nie wystarcza
Zanim poprosi się partnera o podniesienie progu, warto sprawdzić, czy wysyłamy tylko zmiany i czy korzystamy z operacji zbiorczych. Zwykle okazuje się, że limit wystarcza, a problemem jest sposób pracy integracji. Dotyczy to zwłaszcza platform sprzedażowych, gdzie katalogi bywają duże, a zmienia się w nich niewielka część pozycji.