CMS i API

Webhookovi i skupna obrada.

Odaberite sinkronu, webhook ili skupnu isporuku iz volumena, latencije, ponovnog pokušaja i operativnog vlasništva.

Pojasnite zadatak i odluku

Ovaj vodič pretvara webdojavnike i skupnu obradu u radni tijek koji se može pregledati. Povezuje odluke o domeni, vlasništvo, dokaze i prihvaćanje tako da rezultat nastavlja raditi u proizvodnji.

Odaberite sinkronu, webhook ili skupnu isporuku iz volumena, latencije, ponovnog pokušaja i operativnog vlasništva.

Praktični postupak

  1. 1

    Vrste izvora inventara, identifikatori, polja, lokalizacije, vlasnici i stanja publikacije.

  2. 2

    Odaberite uzorak isporuke između volumena, latencije, uredničke kontrole i tolerancije kvarova.

  3. 3

    Mapirajte izvorni zapis u zasebni zapis jezične verzije s trajnom vezom.

  4. 4

    Dodajte autentifikaciju, idempotenciju, ponovni pokušaj, poništavanje predmemorije, bilježenje i kontrole pristupa.

  5. 5

    Probno objavljivanje, promjene izvora, nedostupni rezultati, vraćanje, rad tipkovnice i praćenje prije izdavanja.

Primjer ili alat

Dijagram životnog ciklusa postaje implementacijski ugovor za ponovne pokušaje, idempotenciju, praćenje i ponavljanje. U alat također zabilježite početnu vrijednost, vlasnika, odluku, dokaze, otvoreni problem i datum odobrenja. Koristite pravu stranicu ili transakciju kako bi tim vidio ovisnosti, iznimke i rad na održavanju koji slijedi nakon izdavanja.

Točka odlukeSnimitiKriterij prihvatljivosti
Osnovna linijaPromatrano trenutno stanjeIzvor i datum snimanja
OdlukaOdabrana opcija i obrazloženjeRizik i publika uzeti u obzir
DokazTestirajte, dokumentirajte ili izmjeriteMože se pregledati i ovisi o verziji
OdobrenjeIme, uloga i datumZadovoljeni svi obvezni kriteriji

Odaberite isporuku između kašnjenja, količine i vlasništva

Koristite sinkronu isporuku za male interaktivne zahtjeve koji se obično dovrše unutar vremenskog ograničenja sučelja i mogu odmah prijaviti rezultat. Koristite webdojavnike kada je rad asinkroni, ali svaki rezultat treba ući u CMS čim bude spreman. Koristite skupnu obradu za velika planirana prikupljanja, kontrolirani uvoz ili migracije gdje su propusnost i ponovljivost važniji od neposredne isporuke. Obrasci mogu koegzistirati, ali svaka klasa sadržaja treba imati dokumentiranu zadanu vrijednost.

Procijenite dnevnu i vršnu količinu, veličinu artikla, prihvatljivo vrijeme dovršetka, prozor za ponovni pokušaj, zahtjev za naručivanje, kapacitet recenzenta i operativnog vlasnika. Brzi rezultat nema vrijednost ako ga urednički red ne može obraditi. Uključite uzvodna i nizvodna ograničenja: izvoz CMS, stopu API, radnike u redu čekanja, krajnju točku povratnog poziva, pisanje baze podataka, poništavanje predmemorije i radno opterećenje pregleda. Odaberite najjednostavniji uzorak koji ispunjava potpuni cilj usluge.

UzorakKoristite kadaBitna kontrola
SinkroniMali zahtjev i kratka ograničena latencijaIstek vremena sa sigurnim ponovnim pokušajem klijenta
WebhookSamostalni poslovi trebali bi stići odmahProvjera potpisa i rukovanje idempotentnim događajima
SerijaVeliki kontrolirani set i planirani završetakManifest, kontrolna točka, pomirenje i ponavljanje

Implementirajte provjerljivi životni ciklus web-dojavnika

Prihvatite samo HTTPS POST, provjerite potpis u odnosu na neobrađeno tijelo, provjerite toleranciju vremenske oznake i odbacite nepodržane verzije događaja. Pohranite ID događaja pod jedinstvenim ograničenjem prije primjene poslovnih promjena. Vratite uspjeh nakon trajnog primitka, a zatim obradite asinkrono. Ponovljeni događaj vraća uspjeh bez ponavljanja nuspojave. Rotirajte tajne potpisivanja s razdobljem preklapanja i ograničite dijagnostički izlaz tako da ne otkrije potpise ili sadržaj.

Stanja modela kao što su primljeno, potvrđeno, usklađeno, primijenjeno, zanemareno, ponovni pokušaj i neuspjelo. Uskladite rezultat s ID-om posla, ID-om izvora, revizijom izvora, lokalizacijom i načinom rada. Ako je trenutni izvor noviji, pohranite rezultat za reviziju, ali nemojte otvarati ili zamijeniti trenutnu skicu. Rukujte događajima izvan reda prema pravilima prijelaza stanja, a ne prema redoslijedu dolaska. Zadržite alat za ponavljanje koji zahtijeva razlog, identitet operatera i opseg.

  1. 1

    Provjerite prijenos, potpis neobrađenog tijela, vremensku oznaku, vrstu događaja i verziju ugovora.

  2. 2

    Ustrajte na jedinstvenom događaju i potvrdite trajno primanje.

  3. 3

    Riješite posao i točnu reviziju izvora prije promjene CMS.

  4. 4

    Primijenite prijelaz idempotentnog stanja i izradite pregledni nacrt.

  5. 5

    Snimite završetak ili usmjerite događaj na kontrolirani ponovni pokušaj i reprodukciju.

Učinite serije ponovljivima i pomirljivima

Stvorite nepromjenjivi manifest s ID-om serije, vremenom stvaranja, upitom ili pravilom odabira, ID-om pojedinačne stavke, izvornom revizijom, lokalizacijom, načinom rada, prioritetom i kontrolnim zbrojem. Zamrznite manifest prije podnošenja tako da kasniji CMS upit ne može promijeniti značenje serije. Podijelite ga na ograničene dijelove i koristite stabilne ključeve idempotencije za svaku stavku. Završetak kontrolne točke nakon dugotrajnih zapisa kako bi radnici mogli nastaviti bez počinjanja ispočetka.

Na kraju uskladite predane, prihvaćene, dovršene, odbijene, zastarjele, neuspjele i namjerno preskočene stavke. Brojevi moraju biti u ravnoteži s izvornim manifestom, a svaka nedovršena stavka treba razlog i sljedeću radnju. Ponovno reproduciranje podskupa stvara novi manifest ponavljanja povezan s izvornikom. Nemojte mijenjati izvorne brojeve niti brisati neuspjele dokaze. Objavite grupne rezultate samo u stanjima pregleda, s ograničenjima radnog opterećenja koja štite urednički tim.

  • Manifest popravlja identitet stavke, reviziju izvora, postavke i kontrolni zbroj.

  • Svaka operacija stavke je idempotentna i neovisno o ponovnom pokušaju.

  • Kontrolne točke nastavljaju se nakon prekida bez dupliciranja nacrta.

  • Brojevi konačnog statusa točno su usklađeni s manifestom.

  • Reprodukcija je ograničena, ovlaštena, povezana i revizijska.

Pratite redove i uvježbajte oporavak

Pratite stopu prihvaćenosti, stopu dovršetka, stopu pogrešaka po kategoriji, dubinu reda čekanja, starost najstarije stavke, percentile trajanja obrade, neuspješne provjere webdojavnika, broj ponovnih pokušaja, količinu mrtvih pisama, stopu zastarjelih rezultata i vrijeme od rezultata do uredničkog odobrenja. Upozorenje o utjecaju na korisnika i sve većem zaostatku umjesto o izoliranim prolaznim kvarovima. Nadzorne ploče odvajaju obradu pružatelja usluga, dostavu povratnog poziva, CMS aplikaciju i vrijeme čekanja uredništva.

Runbook identificira vlasnike, sigurnu pauzu, ograničenja skaliranja, rotaciju vjerodajnica, ponovno odobrenje, rukovanje mrtvim pismom, komunikaciju s pružateljem i provjeru oporavka. Izgubljeni povratni poziv vježbe, ponovljeni događaj, događaj izvan reda, prekid rada pružatelja usluga, prekid rada CMS, neusklađenost sheme, istekla tajna i djelomično dovršenje serije. Prihvaćanje zahtijeva oporavak bez dupliciranog objavljivanja, tihog gubitka, ručnog uređivanja baze podataka ili uklanjanja zadnjeg odobrenog sadržaja.

Uloge, dokazi i odobrenje

Generiranje odvojite od objavljivanja. Uspješan odgovor je nacrt, a ne odobrenje. Pohranite izvorni identifikator i verziju, postavke transformacije, identifikator rezultata, stanje pregleda, odobravatelja i vrijeme objave. Kada se izvor promijeni, označite jezičnu verziju za pregled umjesto tihe zamjene odobrenog sadržaja. To omogućuje vraćanje i reviziju na više platformi.

Operacije i održavanje

Rad ne završava objavljivanjem. Povežite jezičnu verziju ili konfiguraciju s izvorom, nadzirite mjere kvalitete i usluge i definirajte konkretne okidače pregleda. Okidači uključuju promjene izvora, pravne promjene, nove potrebe publike, pitanja podrške koja se ponavljaju, tehničke promjene i incidente. Imenovani vlasnik procjenjuje okidač, otvara novu reviziju po potrebi i bilježi obnovljeno odobrenje.

Kontrolni popis za objavu

  • Integracija koristi trajne identifikatore izvora.

  • Vjerodajnice se pohranjuju na strani poslužitelja i rotiraju.

  • Definirano je vremensko ograničenje, ponovni pokušaj i ponašanje ograničenja brzine.

  • Ponovljeni zahtjevi su idempotentni.

  • Generirani sadržaj ulazi u stanje pregleda.

  • Promjene izvora poništavaju ili ponovno otvaraju verziju.

  • Jezična navigacija radi pomoću tipkovnice i pomoćne tehnologije.

  • Praćenje pokriva kvarove, redove čekanja, latenciju i zastarjeli sadržaj.

Mjerodavni izvori

  1. Simple8 API dokumentacija
  2. Simple8 uzorci isporuke
  3. Smjernice za pristupačnost web sadržaja (WCAG) 2.2

Provedite vodič u praksi

Testirajte Simple8 s reprezentativnim sadržajem i koristite kontrolni popis za planiranje kontroliranog proizvodnog tijeka rada.

Testirajte vlastiti tekst