Obchodní systém Solany může mít přesná tržní data, rozumnou strategii a spolehlivou podepisující komponentu a přesto ztratit přehled o tom, co zamýšlel udělat. Selhání často nastává mezi komponentami: jeden pracovník předpokládá, že akce nebyla odeslána, jiný předpokládá uvolnění rozpočtu a přehled zobrazuje zjednodušený stav, který není podložen ani jedním z těchto předpokladů.
Trvalé záznamy a jasná odpovědnost činí tyto hranice prozkoumatelnými. Systém potřebuje vědět, která komponenta může měnit každý stav, které podklady změnu dovolují a jak záznam přežije pád nebo opožděnou odpověď. Potřebuje také historii incidentů, která uchovává tehdejší přesvědčení, místo aby je nahrazovala konečným opraveným pohledem.
Tento průvodce sleduje smyšlený incident s jedním nákupním záměrem a nejistým odesláním. Příklad se týká návrhu a posouzení systému. Nepopisuje živou službu ani nenaznačuje, že trvalé záznamy odstraňují tržní riziko nebo zaručují úspěšné provedení.
Odpovědnost za stav obchodního systému Solany začíná významem
Stav je tvrzením o postupu: návrh čeká na posouzení, záměr má rezervovaný rozpočet, pokus je nevyřešený nebo byla pozice ověřena podle skutečného stavu a její záznamy sladěny. Každé tvrzení by mělo mít definici a správce odpovědného za jeho změny. Označení bez definovaného přechodu může různým komponentám znamenat různé věci.
Oddělujte tržní fakta, fakta o účtu a rozhodnutí podle pravidel. Pozorování kotace je tržním podkladem. Zůstatek tokenů je podkladem účtu v určitém kontextu pozorování. Schválení je rozhodnutím podle pravidel. Jeden druh záznamu by neměl potichu zastupovat jiný jen proto, že rozhraní potřebuje jediný stav.
Starší průvodce trvalou automatizací Solany vysvětluje záměry, rezervace, opakované pokusy a ověření skutečného stavu se sladěním záznamů. Odpovědnost za stav obchodního systému Solany přidává ke každému pojmu konkrétní otázku: která komponenta smí tento stav tvrdit a které podklady při tom musí uchovávat?
Dejte každému záměru stabilní identitu
Záměr představuje jednu navrženou ekonomickou akci v definovaném rozsahu. Jeho identita by měla přežívat opakované pokusy pracovníků, restarty procesů a opakované zprávy. Nový síťový požadavek nemusí vytvářet nový záměr, zatímco podstatně změněné množství nebo částka či rozsah oprávnění mohou vyžadovat nové posouzení.
Záznam záměru by měl odkazovat na aktivum, účet, směr, navržené množství nebo částku, verzi pravidla, podpůrné podklady a stav autorizace. Může se vyvíjet zdokumentovanými přechody a přitom zachovávat historii toho, jak dospěl k současnému stavu. Hodnotitel by měl tuto historii dokázat sledovat bez spoléhání na pracovníka, který má právě úkol na starosti.
Průvodce kryptoměnovým botem Solany přiděluje odpovědnosti při prvním spuštění. Stabilní identita záměru je spojujícím záznamem napříč těmito rolemi. Umožňuje komponentám pozorování, strategie, autorizace a provedení odkazovat na stejnou akci, aniž by si každá vymýšlela vlastní nesouvisející pojem obchodu.
Udržujte pokusy pod záměrem
Pokus je konkrétní snahou odeslat nebo dokončit autorizovanou akci. Má vlastní identitu, časování, transakční kontext a podklady výsledku. Několik provozních pokusů může podle definovaných pravidel obnovy souviset s jedním záměrem, ale neměly by být představovány jako nesouvisející ekonomická rozhodnutí.
Toto rozlišení hraje roli při nejistotě. Pokud se ztratí odpověď na první odeslání, pracovník by měl před čímkoli dalším prozkoumat stávající záměr a záznam pokusu. Neměl by vyvozovat nový nákup z přetrvávající přítomnosti strategického signálu.
Historii pokusů ukládejte trvale dříve, než budete akci považovat za bezpečně předanou. Přesná technika ukládání se může lišit, ale proces obnovy musí dokázat určit, zda již mohlo dojít k odeslání. Záznam existující pouze v paměti nemůže po pádu tento závěr podpořit.
Zvolte jednoho správce rezervací rozpočtu
Rozpočtová evidence by měla mít jednu autoritativní cestu přechodů pro rezervování, spotřebování a uvolňování prostředků. Více komponent může žádat změny, ale neměly by nezávisle přepisovat dostupné množství nebo částku z vlastních pohledů uložených v mezipaměti. To vytváří souběh různých přesvědčení o účtu.
Ve smyšleném incidentu záměr I7 rezervuje osmdesát rozpočtových jednotek. Pracovník provedení na tuto rezervaci odkazuje, zatímco správce ověření skutečného stavu a sladění záznamů určuje její konečné vypořádání z podložených důkazů výsledku. Časový limit plánovače by neměl nezávisle uvolňovat rezervaci jen proto, že jeho úkol trval déle, než se čekalo.
Záznam by měl vysvětlovat také částečná uvolnění a úpravy. Pokud se konečný náklad liší od rezervovaného odhadu, ověření skutečného stavu a sladění záznamů může aktualizovat evidenci s uvedením důvodu. Uchování původní rezervace a úpravy pomáhá hodnotitelům odlišit očekávané rozdíly odhadů od nevysvětlených změn rozpočtu.
Považujte pozorování účtu za datované podklady
Snímek účtu má zdroj, kontext pozorování a čas. Není věčnou pravdou jen proto, že byl jednou úspěšně načten. Systém by měl uchovávat snímek použitý k autorizaci i pozdější snímek použitý k ověření skutečného stavu a sladění záznamů spolu s případnými mezerami nebo nesrovnalostmi.
Nový snímek může odporovat interní evidenci kvůli vnějším převodům, ručním akcím, opožděné interpretaci nebo nevyřešenému pokusu. Správce ověření skutečného stavu a sladění záznamů by měl vztah prozkoumat, místo aby bez vysvětlení nutil jeden záznam odpovídat druhému.
Systém také potřebuje odlišovat současná držená aktiva od pozic patřících strategii. Import účtu nedokládá úplnou historii nabytí. Trvalá evidence může označovat vnější nebo neznámé držené množství, aby strategie nepředpokládala, že každý pozorovaný token patří k záměru, který vytvořila.
Oddělujte záznam událostí od současného pohledu
Pohled na současný stav je užitečný pro provoz: co je nyní otevřené, čekající, dostupné nebo pozastavené? Historie událostí vysvětluje, jak se tyto stavy změnily. Uchovávejte obojí. Obnovení současného pohledu by nemělo vyžadovat vymazání historie, která činí dřívější rozhodnutí srozumitelnými.
Oprava může aktualizovat současnou interpretaci a přitom uchovávat původní pozorování a rozhodnutí. Například transakce nejprve označená jako nevyřešená může být později potvrzena a ověřena podle skutečného stavu se sladěním záznamů. Současný pohled by měl zobrazovat vyřešený stav, zatímco historie uchovává období nejistoty a akce, které během něj nebyly provedeny.
Toto rozlišení také chrání posouzení incidentu. Pokud systém přepíše každý mezistav konečnou odpovědí, nelze vysvětlit, proč obsluha viděla varování nebo proč se pracovník pokusil o obnovu. Přehledná konečná obrazovka nenahrazuje věrný záznam cesty.
Vyžadujte pro přechody konkrétní podklady
Každá změna stavu by měla pojmenovat svůj předpoklad. Návrh se stává autorizovaným po současných kontrolách pravidel. Záměr se stává odeslaným, když záznam pokusu dokládá příslušné předání. Pozice se stává ověřenou se sladěnými záznamy, když byl dopad na účet doložen podle pravidel podkladů daného postupu.
Vyhýbejte se přechodům založeným pouze na uplynulém čase tam, kde čas nemůže prokázat výsledek. Časový limit odeslání může odůvodnit zkoumání nebo řešení vypršení platnosti, ale nedokazuje, že transakce nikdy nenastala. Rezervace by neměla zmizet jen proto, že uplynul obecný termín úkolu.
Starší průvodce obnovou API Solany vysvětluje, proč dočasné chyby, opakované pokusy a neznámé výsledky vyžadují odlišné zacházení. Přechody stavu by měly tato rozlišení zachovávat, aby se systém dokázal rozumně obnovit, místo převádění každé chyby na stejný stav neúspěchu.
Nedovolujte chybějícímu stavu dokazovat neexistenci
Dotaz na stav má zdokumentovaný rozsah a pro položenou otázku může vracet neúplné podklady. Metoda stavu podpisů Solany odlišuje svou mezipaměť nedávných výsledků od volitelného vyhledávání historie transakcí. Chybějící výsledek v této mezipaměti by neměl být považován za univerzální důkaz, že transakce nikdy neexistovala. Dokumentace stavu podpisů Solany.
Systém by měl zaznamenávat kontext dotazu a to, co odpověď podporuje. Pokud jsou vyžadovány další podklady, pokus zůstává nevyřešený a omezený postup obnovy pokračuje. Záznam by měl uvádět, proč současné podklady nestačí, místo aby nechal prázdné pole stát se definitivním neúspěchem.
To je obecný princip posouzení incidentů: absence výsledku a důkaz absence jsou odlišné. Systém zachovávající toto rozlišení může vysvětlovat, proč čekal nebo předal případ k dalšímu řešení. Systém, který je sloučí, může vytvářet duplicitní akci v přesvědčení, že pouze obnovil neúspěšný požadavek.
Posouzení incidentu obchodního systému Solany potřebuje časovou osu
Časová osa incidentu by měla zahrnovat zdrojové události, pozorování systému, rozhodnutí, pokusy, akce obsluhy a opravy. Uchovávejte příslušné časové údaje, místo abyste vše nutili do jediného pořadí podle času příchodu. Posloupnost by měla ukazovat, co systém věděl při každém rozhodnutí.
U smyšleného incidentu I7 zaznamenejte, kdy se návrh otevřel, kdy bylo rezervováno osmdesát jednotek, kdy mohl být pokus odeslán, kdy vypršel časový limit odpovědi a kdy druhý pracovník obnovil úkol. Tyto skutečnosti dokládají hranici, na které by mohlo dojít k duplicitní akci.
Posouzení incidentu obchodního systému Solany by mělo zahrnovat také rozhodnutí, která nenastala. Zamítnutý druhý návrh nebo záměrná pauza mohou ukazovat, že kontrola fungovala. Záznam incidentu zaměřený pouze na chyby může přehlédnout mechanismy, které omezily důsledky a měly by být zachovány.
Rekonstruujte smyšlené neznámé odeslání
Ve 14:00 strategie vytváří I7 ze způsobilých pozorování. Ve 14:01 autorizace rezervuje osmdesát jednotek a schvaluje akci. Ve 14:02 pracovník provedení zaznamenává pokus A7 a odesílá jej. Cesta odpovědi selže dříve, než pracovník dokáže doložit konečný výsledek.
Ve 14:03 druhý pracovník přebírá úkol poté, co první skončí. Nachází I7, A7 a stávající rezervaci. Správným dalším krokem je prozkoumat A7 a ověřit účet se sladěním záznamů, nikoli vytvořit I8 pro další nákup za osmdesát jednotek jen proto, že původní signál stále splňuje podmínky.
Ve 14:05 podložené důkazy dokládají výsledek pokusu a dopad na účet. Správce ověření skutečného stavu a sladění záznamů aktualizuje pozici a rezervaci. Incident pak může vysvětlovat interval nejistoty, cestu obnovy a to, zda nastal duplicitní pokus nebo záměr. Časová osa činí výsledek posouditelným, místo pouhého prohlášení, že systém byl obnoven.
Definujte odpovědnost pracovníků bez ztráty ekonomické identity
Pracovníci mohou používat zámky nebo časově omezená přidělení ke koordinaci provádění úkolu. Tyto mechanismy určují, který pracovník smí jednat nyní, ale ztráta přidělení nemaže záměr ani nedokazuje, že předchozí pokus neměl dopad. Trvalá ekonomická identita musí přežívat dočasnou odpovědnost pracovníka.
Když přebírá jiný pracovník, měl by načíst stávající záznam a určit další povolený přechod. Nový proces pracovníka by neměl znamenat nový obchod. Cesta obnovy potřebuje dost kontextu k odlišení neodeslaného návrhu od nevyřešeného odeslaného pokusu.
Zaznamenávejte změny odpovědnosti v historii incidentu, pokud hrají roli. To pomáhá zjistit, zda dva pracovníci jednali souběžně nebo zda převzetí respektovalo předchozí stav. Účelem není zaznamenávat každou triviální interní událost, ale uchovávat přechody potřebné k vysvětlení důležitého chování.
Kontrolujte konzistenci napříč evidencemi
Systém může provádět kontroly konzistence mezi záměry, pokusy, rezervacemi a pozicemi. Odeslaný nevyřešený pokus by měl mít odpovídající záměr a zacházení s prostředky. Uzavřená pozice by neměla mít nevysvětlené otevřené výstupní rezervace. Uvolněná rezervace by měla mít podložený důvod.
Tyto kontroly zjišťují vztahy, které jediná komponenta nemusí vidět. Strategická služba může vytvářet platné návrhy, zatímco samostatná evidence nechává rezervace nechtěně přetrvávat. Služba provedení může správně sledovat transakce, zatímco pohled na pozici se neaktualizuje. Kontroly mezi záznamy tyto nesoulady odhalují.
Když kontrola selže, uchovejte podklady a omezte dotčený postup. Neopravujte automaticky každý nesoulad mazáním záznamů, dokud součty neodpovídají. Správná oprava závisí na příčině a agresivní vyčištění může zničit historii potřebnou k doložení toho, co se skutečně stalo.
Uplatňujte stejnou disciplínu záznamů na lidské akce
Obsluha může pozastavovat, obnovovat, udělovat výjimky, opravovat nebo ručně měnit účet. Tyto akce patří do historie systému, pokud ovlivňují rozhodnutí nebo stav. Lidský zásah by se neměl stát nevysvětleným rozdílem mezi evidencí a účtem.
Záznam by měl určovat akci, rozsah, čas a důvod bez odhalování zbytečných osobních nebo tajných informací. Pokud obsluha po posouzení uvolní rezervaci, měly by být propojeny podklady podporující tuto volbu. Pokud změní limit, měla by být jasná účinná verze konfigurace.
Starší průvodce provozními relacemi Solany pojednává o předávání. Záznamy incidentů by měly vstupovat do tohoto předávání, aby další relace věděla, která pozastavení, výjimky a nevyřešená omezení zůstávají aktivní. Nová obsluha by je neměla muset vyvozovat z rozptýlených zpráv.
Oddělujte podklady strategie od příčiny incidentu
Strategický signál se může mýlit o trhu bez způsobení systémového incidentu. Naopak ziskový výsledek může následovat po neautorizované nebo duplicitní akci a přesto představovat závažné selhání kontroly. Posuzujte ekonomické výsledky a správnost systému jako samostatné otázky.
Průvodce obchodními signály Solany vysvětluje propojení předpovědí s rozhodnutími a náklady. Posouzení incidentu by mělo určit, která fáze selhala, místo obviňování signálu při každém nepříznivém konečném výsledku. Zastaralý snímek účtu a nepřesná předpověď vyžadují odlišné nápravy.
Toto oddělení také brání příznivým výsledkům skrývat vady. Pokud duplicitní nákup náhodou získal hodnotu, systém přesto překročil zamýšlenou akci. Zpráva o incidentu by měla posuzovat chování vůči oprávnění a pravidlům stavu, nikoli rozhodovat, zda nastalo selhání, podle toho, zda účet později vydělal.
Uchovávejte přiřazení ke zdroji u kopírovaných rozhodnutí
Postup založený na kopírování přidává další vrstvu pozorování a interpretace před vznikem návrhu. Systém by měl uchovávat zdrojovou událost, její klasifikaci, zpoždění pozorování a vlastní rozhodnutí sledujícího. Zdrojová transakce není stejným objektem jako záměr sledujícího.
Průvodce softwarem pro kopírování obchodů na Solaně tyto rozdíly zkoumá. Trvalé záznamy umožňují určit, zda nesrovnalost sledujícího vznikla z opožděného objevení, odlišné velikosti, nepodporované interpretace zdroje nebo vlastní cesty autorizace a provedení sledujícího.
Nedovolujte identitě zdrojové události nahrazovat identitu záměru sledujícího. Několik sledujících nebo strategií může na stejné pozorování reagovat odlišně a jeden sledující se může rozhodnutí zcela zdržet. Systém potřebuje společný odkaz na podklady i nezávislý záznam akce specifický pro účet.
Ukončujte obnovu ověřením skutečného stavu a sladěním záznamů
Proces obnovy by měl doložit současný stav účtu, vyřešit nebo výslovně zachovat neznámé pokusy, ověřit závazky prostředků a sladit jejich záznamy a ověřit připravenost před obnovením závislých akcí. Restart služeb a vymazání čítačů chyb nestačí, pokud ekonomický záznam zůstává nekonzistentní.
Omezené obnovení může být platné. Pozorování trhu může pokračovat, zatímco nová odeslání zůstávají pozastavena, nebo strategie může pracovat s nedotčenými aktivy, zatímco jedna pozice prochází posouzením. Uveďte rozsah, aby současný pohled přesně popisoval možnosti systému.
Záznam dokončení obnovy by měl určovat nevyřešená omezení a správce případných navazujících kroků. To brání tomu, aby se dočasná náhradní cesta stala neviditelným trvalým chováním. Systém může postupovat dál a přitom zachovávat poctivý popis toho, co zůstává nejisté.
Převeďte incident na konkrétní změnu
Posouzení by mělo určit nejčasnější zjistitelný příznak, přechod stavu, který selhal, důsledek a kontrolu, která by mu zabránila nebo jej omezila. Užitečná nápravná akce mění záznam, pravidlo odpovědnosti, požadavek přechodu nebo ověřovací případ.
U I7 může zlepšení spočívat v trvalém zaznamenání pokusu před předáním, přísnějším chování při převzetí nebo kontrole konzistence bránící uvolnění rezervace při neznámém stavu. Tyto změny jsou konkrétněji proveditelné než pokyn zkoušet znovu opatrněji nebo obecně zlepšit sledování.
Uchovejte řízenou reprodukci selhání a očekávaného opraveného chování. Test by měl ověřovat, že stejný záměr přežije přerušení a nevznikne duplicitní ekonomická akce. To spojuje zjištění incidentu s podklady, že oprava řešila skutečnou příčinu.
Udržujte záznam užitečný i po změnách softwaru
Exportujte nebo uchovávejte trvalé obchodní záznamy se stabilními identitami, časovými údaji, jednotkami, verzemi pravidel a vztahy mezi opravami. Pozdější hodnotitel by měl dokázat rekonstruovat incident, i když současné rozhraní používá jiná označení. Historický význam by neměl záviset na určitém rozložení obrazovky.
Záznam by měl vylučovat tajné materiály a přitom zachovávat cestu oprávnění a příslušné odkazy na konfiguraci. Pochopení incidentu by nemělo vyžadovat vlastnictví podpisového klíče. Toto oddělení činí spolupráci a posouzení praktickými bez rozšíření kontroly účtu.
Obchodnímu systému Solany lze provozně snáze důvěřovat, když je jeho stav vysvětlitelný i v obtížných chvílích. Jasná odpovědnost, trvalé záměry, propojené pokusy a věrná historie incidentů takové vysvětlení umožňují. Dovolují systému obnovit se z nejistoty a přitom uchovat podklady potřebné k poučení.