CMS in API

Webhooki in paketna obdelava.

Izberite sinhrono, webhook ali paketno dostavo med količino, zakasnitvijo, ponovnim poskusom in operativnim lastništvom.

Pojasnite nalogo in odločitev

Ta priročnik spremeni spletne trnke in paketno obdelavo v pregleden operativni potek dela. Povezuje domenske odločitve, lastništvo, dokaze in sprejemanje, tako da rezultat še naprej deluje v proizvodnji.

Izberite sinhrono, webhook ali paketno dostavo med količino, zakasnitvijo, ponovnim poskusom in operativnim lastništvom.

Praktični postopek

  1. 1

    Vrste virov inventarja, identifikatorji, polja, lokalne nastavitve, lastniki in stanja objave.

  2. 2

    Izberite vzorec dostave med glasnostjo, zakasnitvijo, uredniškim nadzorom in toleranco napak.

  3. 3

    Preslikaj izvorni zapis v ločen zapis jezikovne različice s trajno povezavo.

  4. 4

    Dodajte preverjanje pristnosti, idempotenco, ponovni poskus, razveljavitev predpomnilnika, beleženje in nadzor dostopa.

  5. 5

    Preskusna objava, spremembe vira, nerazpoložljivi rezultati, povrnitev nazaj, delovanje tipkovnice in spremljanje pred izdajo.

Primer ali orodje

Diagram življenjskega cikla postane izvedbena pogodba za ponovne poskuse, idempotenco, spremljanje in ponovno predvajanje. V orodju zabeležite tudi izhodišče, lastnika, odločitev, dokaze, odprto vprašanje in datum odobritve. Uporabite pravo stran ali transakcijo, da bo skupina videla odvisnosti, izjeme in vzdrževalna dela, ki sledijo izdaji.

Točka odločitveZapisKriterij sprejemljivosti
IzhodiščeOpaženo trenutno stanjeVir in datum zapisa
OdločitevIzbrana možnost in utemeljitevUpoštevano je tveganje in občinstvo
DokaziPreizkusite, dokumentirajte ali izmeritePregledljiv in specifičen za različico
OdobritevIme, vloga in datumIzpolnjeni vsi obvezni kriteriji

Izberite dostavo med zakasnitvijo, obsegom in lastništvom

Uporabite sinhrono dostavo za majhne interaktivne zahteve, ki se običajno zaključijo v časovni omejitvi vmesnika in lahko takoj sporočijo rezultat. Uporabite webhooks, ko je delo asinhrono, vendar mora vsak rezultat vnesti CMS takoj, ko je pripravljen. Uporabite paketno obdelavo za velike načrtovane zbirke, nadzorovane uvoze ali selitve, kjer sta prepustnost in ponovljivost pomembnejša od takojšnje dostave. Vzorci lahko obstajajo sočasno, vendar mora imeti vsak razred vsebine dokumentirano privzeto vrednost.

Ocenite dnevni in najvišji obseg, velikost predmeta, sprejemljiv čas dokončanja, okno za ponovne poskuse, zahteve za naročanje, zmogljivost pregledovalca in operativnega lastnika. Hiter rezultat nima vrednosti, če ga uredniška čakalna vrsta ne more obdelati. Vključite omejitve navzgor in navzdol: izvoz CMS, stopnja API, delavci v čakalni vrsti, končna točka povratnega klica, zapisi v bazo podatkov, razveljavitev predpomnilnika in delovna obremenitev pregleda. Izberite najpreprostejši vzorec, ki ustreza celotnemu cilju storitve.

VzorecUporabite kdajBistveni nadzor
SinhronoMajhna zahteva in kratka omejena zakasnitevČasovna omejitev z varnim ponovnim poskusom odjemalca
WebhookNeodvisna delovna mesta bi morala prispeti takojPreverjanje podpisa in obravnava idempotentnih dogodkov
SerijaVelik nadzorovan sklop in načrtovan zaključekManifest, kontrolna točka, sprava in ponovitev

Implementirajte preverljiv življenjski cikel webhooka

Sprejmite samo HTTPS POST, preverite podpis glede na neobdelano telo, preverite toleranco časovnega žiga in zavrnite nepodprte različice dogodkov. Pred uveljavitvijo poslovnih sprememb shranite ID dogodka pod edinstveno omejitvijo. Vrnite uspeh po trajnem prejemu, nato obdelajte asinhrono. Ponovljen dogodek vrne uspeh brez ponovitve stranskega učinka. Zasukajte skrivnosti podpisovanja z obdobjem prekrivanja in omejite diagnostični izhod, da ne razkrije podpisov ali vsebine.

Stanja modela, kot so prejeto, potrjeno, ujemanje, uporabljeno, prezrto, ponovni poskus in neuspešno. Ujemite rezultat z ID-jem opravila, ID-jem vira, revizijo vira, jezikom in načinom. Če je trenutni vir novejši, shranite rezultat za revizijo, vendar ne odpirajte ali zamenjajte trenutnega osnutka. Dogodke, ki niso v redu, obravnavajte s pravili prehoda stanja in ne z vrstnim redom prihoda. Ohranite orodje za ponovno predvajanje, ki zahteva razlog, identiteto operaterja in obseg.

  1. 1

    Preverite transport, podpis neobdelanega telesa, časovni žig, vrsto dogodka in različico pogodbe.

  2. 2

    Vztrajajte pri edinstvenem dogodku in potrdite trajni prejem.

  3. 3

    Pred spreminjanjem CMS razrešite opravilo in natančno izvorno revizijo.

  4. 4

    Uporabite prehod idempotentnega stanja in ustvarite pregledljiv osnutek.

  5. 5

    Posnemite dokončanje ali usmerite dogodek v nadzorovan ponovni poskus in ponovno predvajanje.

Naj bodo serije ponovljive in združljive

Ustvarite nespremenljiv manifest z ID-jem paketa, časom ustvarjanja, pravilom poizvedbe ali izbire, ID-jem posameznega elementa, izvorno revizijo, jezikom, načinom, prioriteto in kontrolno vsoto. Zamrznite manifest pred oddajo, tako da kasnejša poizvedba CMS ne more spremeniti pomena paketa. Razdelite ga na omejene dele in uporabite stabilne ključe idempotence za vsak element. Zaključek kontrolne točke po trajnem pisanju, tako da lahko delavci nadaljujejo, ne da bi začeli znova.

Na koncu uskladi oddane, sprejete, dokončane, zavrnjene, zastarele, neuspele in namerno preskočene postavke. Število se mora uravnotežiti z izvirnim manifestom in vsak nedokončan element potrebuje razlog in naslednje dejanje. Ponovno predvajanje podnabora ustvari nov manifest ponovitve, povezan z izvirnikom. Ne spreminjajte izvirnih štetij in ne brišite neuspešnih dokazov. Objavite paketne rezultate samo v stanja pregleda, z omejitvami delovne obremenitve, ki ščitijo uredniško skupino.

  • Manifest popravlja identiteto predmeta, izvorno revizijo, nastavitve in kontrolno vsoto.

  • Vsaka operacija elementa je idempotentna in jo je mogoče neodvisno znova poskusiti.

  • Kontrolne točke se po prekinitvi nadaljujejo brez podvajanja osnutkov.

  • Štetje končnega statusa je natančno usklajeno z manifestom.

  • Ponovno predvajanje je omejeno, avtorizirano, povezano in revizijsko.

Spremljajte čakalne vrste in vadite okrevanje

Spremljajte stopnjo sprejetosti, stopnjo dokončanja, stopnjo napak glede na kategorijo, globino čakalne vrste, starost najstarejšega elementa, percentile trajanja obdelave, napake pri preverjanju webhooka, število ponovnih poskusov, količino mrtvih pisem, stopnjo zastarelih rezultatov in čas od rezultata do uredniške odobritve. Opozorilo na vpliv uporabnika in naraščajoče zaostanke namesto na posamezne prehodne napake. Nadzorne plošče ločujejo ponudnikovo obdelavo, dostavo povratnega klica, aplikacijo CMS in uredniški čakalni čas.

Runbook identificira lastnike, varno zaustavitev, omejitve skaliranja, rotacijo poverilnic, odobritev ponovnega predvajanja, obravnavanje mrtvih pisem, komunikacijo ponudnika in preverjanje obnovitve. Izguba povratnega klica pri vadbi, ponovljeni dogodek, dogodek brez naročila, izpad ponudnika, izpad CMS, neujemanje sheme, potekla skrivnost in delno dokončanje paketa. Sprejem zahteva obnovitev brez podvojene objave, tihe izgube, ročnega urejanja baze podatkov ali odstranitve zadnje odobrene vsebine.

Vloge, dokazi in odobritev

Generiranje naj bo ločeno od objave. Uspešen odgovor je osnutek, ne odobritev. Shranite izvorni identifikator in različico, nastavitve transformacije, identifikator rezultata, stanje pregleda, odobritelja in čas objave. Ko se vir spremeni, označite jezikovno različico za pregled, namesto da tiho zamenjate odobreno vsebino. To omogoča povrnitev in revizijo na vseh platformah.

Delovanje in vzdrževanje

Delo se ne konča z objavo. Povežite jezikovno različico ali konfiguracijo z njenim izvorom, spremljajte ukrepe kakovosti in storitev ter definirajte konkretne sprožilce pregleda. Sprožilci vključujejo spremembe vira, pravne spremembe, nove potrebe občinstva, ponavljajoča se vprašanja podpore, tehnične spremembe in incidente. Imenovani lastnik oceni sprožilec, po potrebi odpre novo revizijo in zabeleži ponovno odobritev.

Kontrolni seznam za objavo

  • Integracija uporablja trajne izvorne identifikatorje.

  • Poverilnice so shranjene na strani strežnika in se izmenjujejo.

  • Določeni so časovna omejitev, ponovni poskus in omejitev hitrosti.

  • Ponavljajoče se zahteve so idempotentne.

  • Ustvarjena vsebina preide v stanje pregleda.

  • Spremembe vira razveljavijo ali znova odprejo različico.

  • Jezikovna navigacija deluje s pomočjo tipkovnice in podporne tehnologije.

  • Spremljanje zajema napake, čakalne vrste, zakasnitev in zastarelo vsebino.

Verodostojni viri

  1. Dokumentacija Simple8 API
  2. Simple8 vzorci dostave
  3. Smernice za dostopnost spletne vsebine (WCAG) 2.2

Uporabite vodnik v praksi

Preizkusite Simple8 z reprezentativno vsebino in uporabite kontrolni seznam za načrtovanje nadzorovanega delovnega toka proizvodnje.

Preizkusite svoje besedilo