Rozliczenie za operacje

Wrzucanie monety do skarbonki

Rachunek za platformę rośnie razem ze skalą i potrafi zaskoczyć. Zwykle nie z powodu wzrostu firmy, tylko źle zbudowanych przepływów.

Co liczy się jako operacja

Zwykle każdy krok przepływu, nie każde uruchomienie. Przepływ złożony z wielu kroków zużywa przy jednym uruchomieniu tyle jednostek, ile ma kroków. Rachunek to iloczyn liczby kroków i liczby uruchomień — dlatego skracanie przepływu daje oszczędność przy każdym zdarzeniu.

Zasady liczenia różnią się między narzędziami. Warto sprawdzić przed budową, czy operacją jest krok, wywołanie zewnętrzne, czy przetworzony rekord, bo od tego zależy, jak opłaca się zaprojektować przepływ.

Największe źródła zużycia

  • odpytywanie cykliczne bez zmian w danych,
  • przepływy uruchamiane przy każdym zdarzeniu bez filtru,
  • przetwarzanie pozycji jedna po drugiej zamiast partiami,
  • zbędne kroki pomocnicze,
  • przepływy pozostawione po zakończonych projektach.

Ostatnia pozycja jest najbardziej podstępna. Przepływ zbudowany na potrzeby jednej akcji działa dalej, nie robi nic użytecznego i nikt go nie zauważa, bo nie zgłasza błędów.

Osobną pozycją są kroki dodane w trakcie prób i pozostawione na stałe: zapis pomocniczy, powiadomienie do autora, dodatkowe pobranie tego samego rekordu. Każdy z nich nalicza się przy każdym uruchomieniu.

Filtr na wejściu

Odrzucenie nieistotnych zdarzeń w pierwszym kroku. Najprostsza i najskuteczniejsza oszczędność. Jeszcze lepiej, gdy filtr da się ustawić po stronie źródła — wtedy zdarzenie w ogóle nie dociera do platformy i nie kosztuje nic. Wybór sposobu uruchamiania opisuje tekst o wyzwalaczach zdarzeń.

Przetwarzanie partiami

Jedna operacja obejmująca całą partię rekordów zamiast osobnej operacji na każdy rekord. Przy imporcie danych różnica jest zasadnicza, bo koszt przestaje rosnąć razem z liczbą pozycji. Ograniczenia po obu stronach opisuje tekst o wydajności i limitach.

Ostrzeżenie o zużyciu

Powiadomienie po przekroczeniu progu, ustawione zanim rachunek zacznie rosnąć. Błąd w pętli potrafi wyczerpać przydział szybciej, niż ktokolwiek zdąży to zauważyć — pętla nie zgłasza awarii, tylko pracuje. Warto też sprawdzić, co się dzieje po wyczerpaniu limitu: czy przepływy się zatrzymują, czy naliczana jest dopłata.

Przegląd

Zużycie w podziale na przepływy, sprawdzane raz na kwartał. Zwykle niewielka część przepływów odpowiada za większość rachunku, więc przegląd ma sens nawet wtedy, gdy suma nie budzi niepokoju. Przy okazji wychodzą przepływy nieużywane i te uruchamiane częściej, niż wymaga tego proces.

Przegląd ma sens tylko wtedy, gdy przepływy mają czytelne nazwy i przypisanego właściciela. Zestawienie zużycia dla pozycji nazwanych domyślnie niczego nie wyjaśnia, bo nie wiadomo, czego dotyczą ani kto może je wyłączyć.

Kiedy model rozliczeniowy przestaje pasować

Gdy zużycie rośnie liniowo, a proces jest stabilny i dobrze opisany, opłata za operacje zaczyna finansować to, co dałoby się wykonać raz. Wtedy warto policzyć wariant z instalacją na własnym serwerze — mechanizm opisuje tekst o wersji lokalnej platformy.