Ҷараёни маълумот дар байни гиреҳҳо
(Қисмат: Экосистема ва шабака)
1) Моҳият ва ҳадафҳо
Ҷараёни маълумот дар байни гиреҳҳо каналҳои идорашавандаи рӯйдодҳо, иёлотҳо ва артефактҳо дар байни нақшҳои экосистема мебошанд (валидаторҳо/хонандагон/индексатсияҳо/пулҳо/дарвозаҳо/анборҳо/таҳлил). Вазифаҳо:- Пешгӯӣ: SLO-ҳои устувор бо таъхир/муваффақият/тару тоза.
- Эътимоднокӣ: муқовимат ба талафот, такрорӣ, такрорӣ.
- Амният ва мувофиқат: рамзгузорӣ, имзоҳо, иқомат.
- Миқёспазирӣ: тақсимоти гео, тақсимот, QOS.
2) Таксономияи ҷараён
1. Ҳавопаймои назоратӣ: конфигуратсияҳо, phicheflags, сиёсати масир/маҳдудият.
2. Нақшаи маълумот - ҳодиса: рӯйдодҳои домейн ('амонат. ',' пардохт. ',' пул. ').
3. Тайёраҳои маълумот - ҷараён: ҷараёнҳои дарозмуддат (GRPC/Web-Socket) барои сигналҳо ва ченакҳои зинда.
4. Маҷмӯа/Backfill: зеркашии иловаро таърихӣ, дубора, лаҳзаҳо.
5. Реплика/анти-энтропия: ҳамоҳангсозии давлатӣ, мерклизатсия, ҷараёнҳои CRDT.
6. Телеметрия/мушоҳидаҳо: гузоришҳо/ченакҳо/пайраҳаҳои паҳлӯӣ, ба UX-и асосӣ халал намерасонанд.
Ҳар як намуд дорои синфҳои QOS ва қоидаҳои бознигарӣ/фармоиши худ мебошад.
3) Топология ва масир
Hub-and-Spoke: марказҳои минтақавӣ ҳамчун шина; бозӣ мекунад - гиреҳҳои нақш.
Mesh/P2P: фикрию қисман барои такрор/ғайбат.
Edge-Tiered: дарвозаҳои канори лоғар (меъёри лимит/кэш) → кластерҳои ғафси минтақавӣ.
Масири гео-масир: Қоидаҳои истиқоматии Anycast/Latency-Aware LB +.
Калид - тақсимот: 'partition _ key = chain' Id 'мавзӯи' иҷорагир '' субъекти 'фармоиш ва миқёси пешгӯишавандаро медиҳад.
4) Нақлиёт ва форматҳо
HTTP/2/3, GRPC/QUIC - таъхири кам, мултиплекссия, нигоҳдорӣ.
Кафка/Пулсар/NATS - навбатҳо бо субот/ҳизбҳо/гурӯҳҳои истеъмолкунандагон.
Вебсоцет - чорабиниҳо ва каналҳои мустақимро пахш кунед.
Форматҳо: Protobuf/Avro (схемаҳо бо эволютсия), JSON барои API-ҳои беруна.
Суроғаи Hash ва гирифтани Merkle барои санҷиши якпорчагӣ.
5) Фармоиш, таҳвил ва ниҳоӣ
Модели таҳвил:- Ҳадди аққал як маротиба (пешфарз); idempotency/марг талаб карда мешавад).
- Таъсири маҳз як маротиба тавассути истеъмолкунандаи Outbox/Inbox + idempotent.
- Фармоиш: дар дохили ҳизб кафолат дода мешавад; фармоиши тарафҳо кафолат дода намешавад.
- Финализатсия: статусҳо 'мушоҳидашуда → тасдиқшуда (K) → ниҳоӣ → беэътибор (reorg)'; барои хушбинона - равзанаи баҳс.
6) Idempotence ва dedup
Калиди Idempotence барои рӯйдодҳо:- 'idempotency _ key = ${chainId}|${block}|${tx}|${logIndex}|${type}'
- Аз рӯи калид, TTL равзанаи такрорӣ ≥ 72 соат.
- Барои муноқиша, сарборӣ сиёсати "манбаи ҳақиқат" аст (афзалият, версия, имзо).
- Барои дархостҳои HTTP сарлавҳа сабти посухи 'Idempotency-Key' + мебошад.
7) Навбатҳо, пуштибонӣ ва квотаҳо
Навбатҳо: ҳизбҳо аз рӯи калид; DLQ барои паёмҳои "заҳролуд".
Backpressure: қарзҳо/токенҳо, лимити ҳадди аксар, схема.
Квотаҳо/QOS: P0 (интиқодӣ), P1 (маҳсулот), P2 (яклухт). Ҳавзҳои тақсимшуда/ҳудуди RPS/байт/с/обуна.
Назорати қабул: саривақт рад кардани дархостҳои "гарон", муҳофизат аз рӯи диапазон/андоза.
8) Моделҳои мутобиқат ва додаҳо
Дар дохили ҳизб/гиреҳ хонед.
Мувофиқати ниҳоӣ байни минтақаҳо/тарафҳо.
CRDT барои такрори бидуни низоъ дар баъзе маҷмӯаҳо (ҳисобкунакҳо, маҷмӯаҳо).
Суратҳо + гузоришҳо барои пурборкунии зуд ва такрори детерминистӣ.
9) Амният ва эътимод
MTLS байни гиреҳҳо, печонидани калидҳо, гардиш.
Имзоҳои паём/webhook, мӯҳлатҳои вақт ва тирезаҳои зидди такрорӣ.
Рамзгузорӣ дар рафтан/дар истироҳат; сегрегатсияи калидҳои минтақавӣ.
Кам кардани PII: токенизатсия, манъи маълумоти шахсӣ дар тамғакоғазҳо/ченакҳо.
10) Самаранокӣ: бастабандӣ, фишурдасозӣ, кэш
Бастабандӣ: гурӯҳбандии паёмҳои хурд барои кам кардани сарборӣ.
Фишурдасозӣ: zstd/gzip бо луғатҳои бехатар.
Нақд: ҷавобҳои манфӣ ва феҳристҳои "гарм"; TTL ва маъюбӣ аз рӯи ҳодиса.
11) Диаграммаҳои маълумот (истинодҳо)
Бақайдгирии ҷараён/лот
sql
CREATE TABLE streams (
name TEXT PRIMARY KEY,
partitions INT,
qos TEXT, -- P0 P1 P2 retention_days INT,
schema_version TEXT
);
CREATE TABLE offsets (
stream TEXT, partition INT, consumer_group TEXT,
offset BIGINT, updated_at TIMESTAMPTZ,
PRIMARY KEY (stream, partition, consumer_group)
);
Сабти рӯйдодҳо (upsert idempotent)
sql
CREATE TABLE events_core (
id UUID PRIMARY KEY,
idempotency_key TEXT UNIQUE,
ts TIMESTAMPTZ,
partition_key TEXT,
type TEXT,
payload JSONB,
status TEXT, -- observed confirmed finalized invalidated signature TEXT
);
DLQ/Карантин
sql
CREATE TABLE dlq (
id UUID PRIMARY KEY,
stream TEXT, partition INT, offset BIGINT,
reason TEXT, payload JSONB, ts TIMESTAMPTZ
);
12) Сиёсатҳо (YAML)
QOS ва маҳдудиятҳо
yaml qos:
P0: { ack_timeout_ms: 2000, retries: 3, backoff_ms: [100,400,800], rps_per_org: 1500 }
P1: { ack_timeout_ms: 5000, retries: 2, rps_per_org: 800 }
P2: { best_effort: true, rps_per_org: 200 }
limits:
max_message_bytes: 1048576 max_stream_subscriptions_per_client: 20
Финализатсия ва тирезаҳо
yaml finality:
eth-mainnet: { k: 12 }
polygon: { k: 256 }
optimistic: { k: 0, challenge_minutes: 20 }
Масир/истиқомат
yaml routing:
prefer_local_region: true fallback: [nearest_healthy, master_hub]
residency:
eu: ["eu"]
uk: ["uk"]
13) Мушоҳида: SLI/SLO
SLI (аслӣ):- Latency p95/p99 (ingress → egress, per-stream/Qo
- Сатҳи муваффақият/сатҳи тарки.
- Queue Lag p95 ва ақибмонии истеъмолкунандагон аз ҷониби ҳизб.
- Тару тоза p95 (inest → истеъмол кунед).
- Меъёри Reorg/нодуруст (агар onchain).
- Самаранокии Dedup (% аз он ба таври бесамар ғарқ мешавад).
- Таносуби Geo-Hit (хидматрасонии маҳаллӣ).
- P0 таъхири p95 ≤ 400 ms; Муваффақият ≥ 99. 95%; Queue-lag p95 ≤ 2 с; Тару тоза p95 ≤ 60 с.
- Самаранокии Dedup ≥ 99%; DLQ ≤ 0. 1% трафик.
Панели панелҳо: ҷараёнҳои Core/Lag & Freshness/Qo
14) Намунаҳои истеъмолкунандагон
Outbox/Inbox: нашри атомӣ ва барномаи idempotent.
Таъсири маҳз як маротиба: Калид ва версияи охирини истифодашударо нигоҳ доред.
Нишонаҳои обӣ: маълумоти дер.
Таъсири паҳлӯии Idempotent: дархостҳои беруна бо танҳо сабти калидӣ ва вокуниш.
15) Усулҳои таназзул
Танҳо ҳолати ниҳоӣ: мо танҳо чорабиниҳои анҷомёфтаро мебарорем.
Кэш-танҳо барои китобҳои истинодӣ, усулҳои вазнинро ях мекунад.
Drottle P2 ва "ҳолати парҳез" барои ҷараёнҳо (коҳиш ёфтани тароват).
Танҳо барои API-ҳои миёна хонед.
16) Варақаҳо ва муҳоҷирати бидуни вақт
Кабуд-Сабз/Канария аз ҷониби ҷараёнҳо ва истеъмолкунандагон.
Схема-аввал: танҳо майдонҳоро илова кунед; MAJOR - версияҳои параллелии мавзӯъҳо.
Муҳоҷирати ҷуброншаванда: истеъмолкунандагони соя, муқоисаи ақибмонӣ/муваффақият, гузариш.
17) Қоидаҳои амалиётӣ
Ҳамарӯза: Ҳисоботи SLO (ниҳонӣ/муваффақият/ақибмонӣ/тару тоза), аудити имзо, санҷиши DLQ.
Ҳафтаина: аз нав дида баромадани партияҳо/квотаҳо, санҷиши DR (боркунӣ аз лаҳза), таҳлили самаранокии Dedup.
Ҳар моҳ: санҷишҳои бетартибӣ (гум/ҷиттер, нокомии брокер, reorg-burst), аз нав дида баромадани тирезаҳои ниҳоӣ.
Пеш аз озод шудан: канарӣ ≥ 120 дақиқа, дарвозаҳои SLO, нақшаи бозгашт.
18) Ҳодисаҳои китоби бозӣ
Таркиши A. Queue-Lag/Consumer-Lag
1. Афзоиши истеъмолкунандагон/KEDA; 2) аз нав тақсим кардани тарафҳо; 3) кори P2 ва яклухтро ях кунед; 4) таҳлили калидҳои "гарм".
B. афзоиши p95 Latency P0
1. P2-throttle, афзалияти P0; 2) дарвозаҳои миқёсӣ/брокерҳо; 3) кэш танҳо барои маълумотномаҳо; 4) ихроҷи берунӣ.
C. баланд DLQ/дубляж
1. Калиди idempotence/TTL -ро санҷед; 2) мустаҳкам кардани дедуп; 3) истеҳсолкунандаи ғалоғуларо маҳдуд кунед; 4) такрори пас аз ислоҳ.
D. нақшаҳо/шартномаҳои Drift
1. Ҳолати қатъиро фаъол созед (беэътиборро буред); 2) ба истеҳсолкунанда хабар диҳед; 3) адаптерро озод кунед; 4) линтерҳои навсозӣ.
E. вайрон кардани иқомат/имзоҳо
1. Воҳиди содирот/канал; 2) гардиши калидҳо/сертҳо; 3) аудит ва пас аз марг; 4) сиёсати навсозӣ.
19) Рӯйхати назорати амалисозӣ
1. Намудҳои ҷараён ва калиди тақсимкуниро муайян кунед.
2. Фаъол кардани idempotence/dedup ва ниҳоӣ бо тирезаҳои K/баҳс.
3. Конфигуратсияи навбатҳо, QOS, квотаҳо ва backpressure.
4. MTLS/имзоҳо ва сиёсати истиқоматро иҷро кунед.
5. Схемаҳо/регистрҳоро (ҷараёнҳо, ҷуброн, dlq) ва телеметрияи SLI/SLO ворид кунед.
6. Ташкили муҳоҷирати ноҳиявии канарӣ/кабуд-сабз ва бебозгашт.
7. Усулҳои таназзул ва дафтарҳои ҳодисаҳоро кор кунед.
20) Луғат
Backpressure - назорати сарбории вуруд (қарзҳо/токенҳо/маҳдудиятҳо).
DLQ - "навбати мурда" барои паёмҳои мушкилӣ.
CRDT - сохторҳои иттилоотӣ бо ҳалли муноқишаҳо бидуни ҳамоҳангӣ.
Ниҳоӣ - бебозгашт будани ҳодиса/ҳолат.
Таъсири маҳз як маротиба - натиҷаи такрории бехатар аз ҳадди аққал як маротиба.
Нишони обӣ - Пешрафти коркарди марка барои рӯйдодҳои дер.
Хориҷкунӣ - хориҷ кардани ҳолатҳои таназзулёфта аз ҳавз.
Сатри поён: ҷараёни маълумот дар байни гиреҳҳо на танҳо "навбат ва шунаванда", балки интизоми системавии тартибот, ниҳоӣ, номутаносибӣ, амният ва мушоҳида мебошад. Калидҳои тақсимоти стандартӣ, квотаҳо/квотаҳо, схемаҳои қатъӣ ва SLO, дар якҷоягӣ бо режими таназзул ва дафтарҳои бозӣ, ба экосистема каналҳои устувори интиқоли маълумотро дар миқёс ва аудит медиҳанд.