castomFLOW

Przibytki, na ktore możesz liczyć

Nikt niy zauważo automatyzace, aże posyje coś drugi roz

Wtedy zauważo wszyscy. Sztyry mechanizmy na tyj strōnie sōm, bo fiaska takigo softu sōm zawsze te same sztyry fiaska, a wszyskie idzie ômijōnōć projektym, a niy starannością.

Symuluj, zanim publikniesz

Przepuść prawdziwy rekord przez workflow, co je wyłōnczōny, i czytaj nazod dokłodnie, co by sie stało: kera droga, kŏżdo wartość na kŏżdym kroku, formułowanie kŏżdej wiadomości i żodanie, co by poszło do kŏżdego zewnętrznego systymu.

Nic niy wychodzi za brama. Żodny mail niy idzie, żodno faktura niy powstaje, żodne pobrańie niy je prōbowane, żodny wiersz niy je zapisany. Zewnętrzne wywołania sōm zapisane jako intencyje, z ładunkiem, co by poszoł, cobyś widzioł, czy mapowanie je dobre, zanim stanie sie czyjim problymym.

Symulacyje sōm sposōb, jak ôdpowiec na pytanie, co zatrzymuje ludzi przed włōnczyniym automatyzace: co to naprawde zrobi?

Symulacyjŏ · zamōwienie 88 214Nic nie posłane
  • 1Sprawdź adresaZapasowane. Zapisano by 6 pōl.
  • ?WarunekZamōwienie nad 1 000 zł? Niy — 289,00 zł. Krōtka droga.
  • 3FakturaPoszło by POST do systymu fakturowanio. Ładunek pokazany w cołkości.
  • !Złapane tuStawka VAT zmapowana ze złego pola. Znalezione w symulacyji, a niy w skrzynce ksiyngowego.

Posłane: nicPobrane: nic

Przibytek idzie po wersyji, na ktore wstōmpioł

Publikacyjŏ zmiany we workflow niy dotko przibytkōw, co sōm już w strzodku. Kŏżdy przibytek je przypniynty do wersyji, na ktore zaczōł, i kōńczy tō wersyjŏ, niy wzglyndom na to, jak dlugo to trwo i ile przepiszesz w miyndzyczasie.

Wiyc możesz przebudować workflow, jak dziesiyń tysiyncy ludzi je w połowie, i kŏżdy z nich skōńczy flow, co mu ôbiecano. Inkszo rozwiōnzanie — projekt, w ktorym cołka dalszo droga je zmaterializowano przy wejściu — to prziczyna, dlaczego edytowanie żywyj automatyzace wydo sie niebezpieczne we wiynkszości narzyndzi. Tu to nic nadzwyczajnego.

Nowe przibytki dostajōm nowō wersyjŏ ôd momentu publikacyje. Na keryj wersyji je przibytek je zapisane na przibytku, coby pytanie ô zachowaniu we marcu mioło ôdpowiedź we wrześniu.

Edytowanie na żywov4 → v5
  • 1Przedtym2 918 przibytkōw w locie, wszyskie na v4. Niektōre w dwudniowym czekaniu.
  • 2Publikuj v5Dwa kroki przestawione, jedno wiadomość przepisano.
  • 3PotymTe 2 918 skōńczōm v4. Wszystko, co zaczōnie ôd 11:40, idzie na v5.
  • §Niktniy dostowo połowy jednego workflow i połowy drugigo.

Wersyjŏ zapisano na kŏżdym przibytkuStare wersyje zachowane

Ponowienia, co niy mogōm posać drugi roz

Krok je czystōm funkcyjōm swojich wejść, a jego efekty zapisujōm sie razem z postympym przibytku do następnego kroku. Niy ma ôkna, we kerym wiadomość już poszła, a przibytek ô tym niy wie.

To je cołki trik, a to je strukturalno włŏsność, a niy ôbiecanie. Worker zabity w strzodku kroku — deploy, krach, maszyna, co zniknie — zostawio przibytek dokłodnie tam, gdzie był. Inkszy worker go podniose i zrobi krok jeszcze roz. Bo efekt i postymp zapisujōm sie jako jedno, to abo oba sie stōy, abo żodne.

Wychodzōnce wywołania do systymōw, co wspierajōm klucze idempotencyje, niosōm taki klucz, wyprowadzōny z przibytku i kroku, coby tamta strōna tyż mogła poznać powtōrzenie.

Worker zabity w strzodku posyłanioÔdtworzōne
  • 1Krok 5 zaczōno siePosyj powiadōmienie ô wysyłce.
  • ✕Robocik umrziłWdowołanie. Niczego niy zapisano.
  • 2PodniynteInny robocik znajdzie, że przebieg dali stoi na kroku 5.
  • ✓Posłane rozKlient dostoł jednego maila, a niy dwōch.

Efekty zapisujōm sie ze posuwymKlucz idempotencyji na przebieg i krok

Log napisany, coby go człowiek przeczytoł

Każdy przebieg, każdy krok, gałąź, co jōm wziōnł, i wert, co o tym zadecydowoł. Czasy na krok. Zapytanie i ôdpowiedź każdego zewnętrznego wywołania, z zaszlifowanymi danymi dostympu. Wersja, na keryj przebieg stoł. Gdzie przebieg czeko i do kiedy.

Jak ktoś zapyto, co sie stało z zamōwianym czternastego, je ôdpowiedź, a znaleść jōm trwo minutę, a niy popołednie sklejania logōw z trzech systymōw.

Przebiegi, co sie niy podarły, zbierajōm sie na jednym placu z pogrupowanym powodym, coby „czterdzieści jedyn porażek za noc” rozlyzoło sie na „jedyn dostawca zwracoł 503 przez dziewiōń minut”, a niy czterdzieści jedyn ôsobnych dochodzyń.

Za noc, pogrupowane41 porażek
  • 1Jedyn powōdAPI dostawcy zwracoł 503 miyndzy 02:41 a 02:50.
  • 2Co sie stałoWszystkie 41 sprōbowano znōw; 39 podarło sie za drugim rŏzym.
  • 3ZostaneDwa stoły i czekajōm na człowieka. Oba sōm na liście z rynkōm, co sie niy podarła.
  • §Niy czterdzieści jedyndochodzyń. Jedno, i decyzja ô dwōch rekordach.

Dane dostympu zaszlifowaneWersja zapisano

Czego niy ôbiecōmy

Niy publikujemy na strōnie marketingowej liczby dostympności, bo liczba bez ôkresu pōmiaru i definicyje „dzioła” to je ôzdoba. Jak jej potrybujesz kontraktowo, spytaj, a pogodōmy sie, do czego naprawdę mogōm sie zobowiozać.

Niy umiym tyż zrobic, coby cudze API było zawodne. Jak dostawca leży, przepływ, co ôd niego zoleży, czeko, sprōbuje znōw i na kōniec stoje z jasnym powodym. Co mogōm ôbiecac, to że porażka je widoczno, że niczego niy psuje i że wznowienie niy posyło wiadomości drugi roz.

O czekaniu: przebieg, co czeko dwa dni, to wake_at na przebiegu, a niy robota stojōnco w kolejce. Dlatego przepływ może trzimać sto tysięcy przebiegōw w trzitygodniowym czekaniu bez żodnych kosztōw, i dlatego liczba przebiegōw, co teroz czekajōm, to niy je co, na co musisz myślec.

Przebieg, o kery nigdy niy myślisz, to ten, co sie podarł.