Wyjaśnij zadanie i decyzję
Ten przewodnik zmienia elementy webhook i przetwarzanie wsadowe w możliwy do sprawdzenia przepływ pracy. Łączy decyzje dotyczące domeny, własność, dowody i akceptację, dzięki czemu wynik nadal sprawdza się w produkcji.
Wybierz dostarczanie synchroniczne, webhook lub wsadowe spośród wolumenu, opóźnienia, ponownych prób i własności operacyjnej.
Praktyczny proces
- 1
Typy źródeł zasobów reklamowych, identyfikatory, pola, ustawienia regionalne, właściciele i stany publikacji.
- 2
Wybierz wzorzec dostarczania spośród objętości, opóźnienia, kontroli redakcyjnej i tolerancji na awarie.
- 3
Zamapuj rekord źródłowy na osobny rekord wersji językowej z trwałym powiązaniem.
- 4
Dodaj uwierzytelnianie, idempotencję, ponawianie prób, unieważnianie pamięci podręcznej, rejestrowanie i kontrolę dostępu.
- 5
Publikacja testowa, zmiany w źródle, niedostępne wyniki, wycofywanie zmian, obsługa klawiatury i monitorowanie przed wydaniem.
Przykład lub narzędzie
Diagram cyklu życia staje się umową implementacyjną dotyczącą ponownych prób, idempotencji, monitorowania i odtwarzania. W narzędziu zapisz także punkt odniesienia, właściciela, decyzję, dowody, otwartą kwestię i datę zatwierdzenia. Użyj prawdziwej strony lub transakcji, aby zespół mógł zobaczyć zależności, wyjątki i prace konserwacyjne następujące po wydaniu.
| Punkt decyzji | Nagrywać | Kryterium akceptacji |
|---|---|---|
| Linia bazowa | Zaobserwowany stan obecny | Źródło i data zapisu |
| Decyzja | Wybrana opcja i uzasadnienie | Uwzględniono ryzyko i odbiorców |
| Dowód | Testuj, dokumentuj lub mierz | Możliwość przeglądu i specyficzna dla wersji |
| Aprobata | Imię i nazwisko, rola i data | Wszystkie obowiązkowe kryteria spełnione |
Wybierz dostawę spośród opóźnienia, wolumenu i własności
Użyj dostarczania synchronicznego w przypadku małych interaktywnych żądań, które zwykle kończą się w ramach limitu czasu interfejsu i mogą natychmiast zgłosić wynik. Używaj webhooków, gdy praca jest asynchroniczna, ale każdy wynik powinien zostać wprowadzony do CMS, gdy tylko będzie gotowy. Korzystaj z przetwarzania wsadowego w przypadku dużych zaplanowanych zbiorów, kontrolowanych importów lub migracji, gdzie przepustowość i odtwarzalność są ważniejsze niż natychmiastowa dostawa. Wzorce mogą współistnieć, ale każda klasa zawartości powinna mieć udokumentowaną wartość domyślną.
Oszacuj dzienny i szczytowy wolumen, rozmiar elementu, akceptowalny czas realizacji, okno ponawiania prób, wymagania dotyczące zamówienia, liczbę recenzentów i właściciela operacyjnego. Szybki wynik nie ma żadnej wartości, jeśli kolejka redakcyjna nie jest w stanie go przetworzyć. Uwzględnij limity upstream i downstream: eksport CMS, szybkość API, procesy robocze kolejki, punkt końcowy wywołania zwrotnego, zapisy w bazie danych, unieważnianie pamięci podręcznej i przeglądanie obciążenia. Wybierz najprostszy wzorzec, który spełnia pełny cel usługi.
| Wzór | Użyj kiedy | Niezbędna kontrola |
|---|---|---|
| Synchroniczny | Małe żądanie i krótkie, ograniczone opóźnienie | Przekroczono limit czasu przy ponownej próbie bezpiecznego klienta |
| Webhook | Niezależne prace powinny dotrzeć szybko | Weryfikacja podpisu i idempotentna obsługa zdarzeń |
| Seria | Duży kontrolowany zestaw i zaplanowane zakończenie | Manifestacja, punkt kontrolny, pojednanie i powtórka |
Zaimplementuj weryfikowalny cykl życia webhooka
Akceptuj tylko protokół HTTPS POST, zweryfikuj podpis w stosunku do nieprzetworzonej treści, sprawdź tolerancję znacznika czasu i odrzuć nieobsługiwane wersje zdarzeń. Przed zastosowaniem zmian biznesowych przechowuj identyfikator zdarzenia pod unikalnym ograniczeniem. Zwróć sukces po trwałym otrzymaniu, a następnie przetwarzaj asynchronicznie. Powtarzające się wydarzenie przywraca sukces bez powtarzania efektu ubocznego. Zmieniaj sekrety podpisywania z okresem nakładania się i ograniczaj dane wyjściowe diagnostyczne, aby nie ujawniały podpisów ani treści.
Stany modelu, takie jak odebrany, zweryfikowany, dopasowany, zastosowany, zignorowany, ponawianie próby i niepowodzenie. Dopasuj wynik do identyfikatora zadania, identyfikatora źródła, wersji źródła, ustawień regionalnych i trybu. Jeśli bieżące źródło jest nowsze, zapisz wynik do kontroli, ale nie otwieraj ani nie zastępuj bieżącej wersji roboczej. Obsługuj zdarzenia poza kolejnością według reguł zmiany stanu, a nie kolejności przybycia. Zachowaj narzędzie do odtwarzania, które wymaga powodu, tożsamości operatora i zakresu.
- 1
Sprawdź transport, podpis w treści pierwotnej, sygnaturę czasową, typ zdarzenia i wersję umowy.
- 2
Utrzymaj wyjątkowe wydarzenie i potwierdź trwały odbiór.
- 3
Przed zmianą CMS rozwiąż zadanie i dokładną wersję źródła.
- 4
Zastosuj idempotentne przejście stanu i utwórz wersję roboczą nadającą się do przeglądu.
- 5
Nagraj zakończenie lub skieruj wydarzenie do kontrolowanej ponownej próby i odtworzenia.
Spraw, aby partie były powtarzalne i możliwe do pogodzenia
Utwórz niezmienny manifest z identyfikatorem partii, czasem utworzenia, zapytaniem lub regułą wyboru, identyfikatorem pojedynczego elementu, wersją źródła, ustawieniami regionalnymi, trybem, priorytetem i sumą kontrolną. Zamroź manifest przed przesłaniem, aby późniejsze zapytanie CMS nie mogło zmienić znaczenia partii. Podziel go na ograniczone fragmenty i użyj stabilnych kluczy idempotencji dla każdego elementu. Zakończenie punktu kontrolnego po trwałych zapisach, dzięki czemu pracownicy mogą wznowić pracę bez zaczynania od nowa.
Na koniec uzgodnij elementy przesłane, zaakceptowane, ukończone, odrzucone, nieaktualne, zakończone niepowodzeniem i celowo pominięte. Liczby muszą być zgodne z oryginalnym manifestem, a każdy niezakończony element wymaga przyczyny i następnego działania. Odtwarzanie podzbioru tworzy nowy manifest odtwarzania powiązany z oryginałem. Nie zmieniaj oryginalnych obliczeń ani nie usuwaj nieudanych dowodów. Publikuj wyniki wsadowe tylko w stanach recenzji, z limitami obciążenia chroniącymi zespół redakcyjny.
Manifest poprawia tożsamość elementu, wersję źródła, ustawienia i sumę kontrolną.
Każda operacja na elemencie jest idempotentna i można ją niezależnie ponowić.
Punkty kontrolne są wznawiane po przerwie bez powielania przeciągów.
Ostateczne stany liczników zgadzają się dokładnie z manifestem.
Powtórka ma określony zakres, jest autoryzowana, połączona i podlega audytowi.
Monitoruj kolejki i ćwicz regenerację
Monitoruj współczynnik akceptacji, współczynnik ukończenia, poziom błędów według kategorii, głębokość kolejki, wiek najstarszego elementu, percentyle czasu trwania przetwarzania, błędy weryfikacji webhooka, liczbę ponownych prób, liczbę niewysłanych wiadomości, wskaźnik nieaktualnych wyników oraz czas od wyniku do zatwierdzenia redakcyjnego. Ostrzegaj o wpływie użytkownika i rosnących zaległościach, a nie o pojedynczych, przejściowych awariach. Panele oddzielają przetwarzanie dostawców, dostarczanie połączeń zwrotnych, aplikację CMS i redakcyjny czas oczekiwania.
Element Runbook identyfikuje właścicieli, bezpieczne wstrzymanie, limity skalowania, rotację poświadczeń, zatwierdzanie odtwarzania, obsługę utraconych wiadomości, komunikację z dostawcą i weryfikację odzyskiwania. Ćwiczenie utraciło wywołanie zwrotne, powtarzające się zdarzenie, zdarzenie poza kolejnością, awaria dostawcy, awaria CMS, niezgodność schematu, wygasły klucz tajny i częściowe zakończenie wsadu. Akceptacja wymaga odzyskania bez duplikowania publikacji, cichej utraty, ręcznej edycji bazy danych lub usunięcia ostatniej zatwierdzonej treści.
Role, dowody i zatwierdzenie
Trzymaj generowanie oddzielnie od publikacji. Pomyślna odpowiedź to projekt, a nie zatwierdzenie. Przechowuj identyfikator źródła i wersję, ustawienia transformacji, identyfikator wyniku, stan recenzji, osobę zatwierdzającą i godzinę publikacji. Gdy zmieni się źródło, zaznacz wersję językową do sprawdzenia, zamiast po cichu zastępować zatwierdzoną treść. Dzięki temu możliwe jest wycofywanie zmian i inspekcja na różnych platformach.
Eksploatacja i konserwacja
Praca nie kończy się w momencie publikacji. Połącz wersję językową lub konfigurację ze źródłem, monitoruj jakość i miary usług oraz zdefiniuj konkretne wyzwalacze przeglądu. Wyzwalacze obejmują zmiany źródła, zmiany prawne, nowe potrzeby odbiorców, powtarzające się pytania dotyczące pomocy, zmiany techniczne i incydenty. Nazwany właściciel ocenia wyzwalacz, w razie potrzeby otwiera nową wersję i rejestruje ponowne zatwierdzenie.
Lista kontrolna przed publikacją
Integracja wykorzystuje trwałe identyfikatory źródła.
Poświadczenia są przechowywane po stronie serwera i podlegają rotacji.
Zdefiniowano limit czasu, ponowną próbę i zachowanie limitu szybkości.
Powtarzające się żądania są idempotentne.
Wygenerowana treść przechodzi w stan recenzji.
Zmiany źródła unieważniają lub ponownie otwierają wersję.
Nawigacja językowa działa za pomocą klawiatury i technologii wspomagających.
Monitorowanie obejmuje awarie, kolejki, opóźnienia i nieaktualne treści.