Операциялар және басқару → Өнімділік метрикасы
Өнімділік метрикасы
1) Неге өнімділік метрикасы қажет
Өнімділік - бұл жүйенің берілген құн кезінде жауап беру уақыты мен өткізу қабілеті бойынша мақсатты SLO қамтамасыз ету қабілеті. Метрикасыз мүмкін емес:- оқыс оқиғаларға дейін азып-тозуды анықтау,
- сыйымдылығы мен бюджетін болжау,
- баламалы шешімдерді салыстыру (кэш vs БД, gRPC vs REST),
- релизден кейін регрессияны басқару.
Қағидаттары: метриктердің бірыңғай сөздігі, перцентильдер бойынша агрегаттау (p50/p90/p95/p99), «ыстық» және «суық» жолдарды бөлек есепке алу, контекст (нұсқа, өңір, провайдер, құрылғы).
2) Метриктердің таксономиясы
2. 1 Негізгі SRE жақтаулары
Төрт алтын сигнал: Latency, Traffic, Errors, Saturation.
RED (микросервистер үшін): Rate, Errors, Duration.
USE (темір үшін): Utilization, Saturation, Errors.
2. 2 деңгейлері
Инфрақұрылым: CPU, RAM, диск, желі, контейнерлер, тораптар.
Платформа/Сервистер: API-эндпойнттар, кезектер, кэштер, БД, оқиғалар шиналары.
Клиенттік тәжірибе: Web Vitals, мобильді SDK, стриминг, CDN.
Дата-платформа: ETL/ELT, ағындар, сөрелер, BI кідірістер.
Бизнес-сыни флоу: авторизация, KYC, депозиттер/төлемдер, гейм-раундтар.
3) Негізгі метриктер мен формулалар каталогы
3. 1 API және микросервистер
RPS (Requests per second).
Latency p50/p95/p99 (ms) - мүмкіндігінше «end-to-end» және «backend-only».
Error Rate (%) = 5xx + валидацияланатын 4xx/барлық сұраулар.
Saturation: воркерлер кезегінің орташа ұзындығы, «in-flight» сұраулары.
Cold Start Rate (FaaS үшін).
Throttling/Dropped Requests.
SLO мысал: p95 latency ≤ 250 ms EU-Шығыс аймағында 2k дейін RPS кезінде; 0 ≤ қателері. 5%.
3. 2 Деректер қорлары
QPS/Transactions/s, avg/median query time, p95 query time.
Lock Waits / Deadlocks, Row/Index Hit Ratio, Buffer Cache Miss%.
RepLag (репликация), Checkpoint/Flush time, Autovacuum lag.
Hot Keys/Skew - жүктеме бойынша топ-N кілттері.
«Ядроға сұрау салу» формуласы: QPS/ vCPU_core_count → шардирлеу сигналы.
3. 3 Кэш және CDN
Hit Ratio (%), Evictions/s, Latency p95, Item Size percentiles.
Origin Offload (%) для CDN, TTFB, Stale-while-revalidate hit%.
3. 4 Кезектер/ағындар
Ingress/egress msg/s, Consumer Lag (хабарлар/уақыт), Rebalance rate.
Processing Time p95, DLQ Rate.
3. 5 Инфрақұрылым/контейнерлер
CPU Utilization %, CPU Throttle %, Run Queue length.
Memory RSS/Working Set, OOM kills, Page Faults.
Disk IOPS/Latency/Throughput, Network RTT/ retransmits.
Node Saturation: pods pending, pressure (CPU/Memory/IO).
3. 6 Web-клиент (UX)
Core Web Vitals: LCP, INP, CLS.
TTFB, FCP, TTI, Resource Timing (DNS, TLS, TTFB, download).
Error Rate (JS), Long Tasks, SPA route change time.
CDN Geo-Latency (перцентильді).
3. 7 Мобильді клиент
App Start time (cold/warm), ANR rate, Crash-free sessions %.
Network round-trips/session, Payload size, Battery drain/session.
Offline success rate (кешіктірілген операциялар).
3. 8 Дата-платформа және есептілік
Freshness Lag (T-now → витрина), Throughput rows/s, Job Success %.
Cost per TB processed, Skew партиялар бойынша, Late events%.
BI Time-to-Render p95 негізгі дашбордтар үшін.
3. 9 Домендік-сыни флоу (iGaming мысал ретінде)
Auth p95, KYC TTV (Time-to-Verify), Deposit/Withdrawal p95.
Game Round Duration p95, RNG call latency, Provider RTT p95.
Payment PSP success rate, Chargeback investigation SLA.
4) Қалыпқа келтіру, перцентиль және атрибуция
Орташаға қарсы перцентили: p50/p90/p95/p99 бекітеміз - орташасы ең жоғары ауырсынуды тегістейді.
Тіліктер: қосымшаның нұсқасы, өңір, провайдер, желі арнасы (4G/Wi-Fi), құрылғы.
Корреляция: себеп-салдарлық тізбектерге арналған «backend-only» және «real-user» метрикаларын байланыстырамыз.
Exemplars/Traces: экстремалды тұмсықтарды трассировкалармен байланыстырамыз.
5) Табалдырықтар мен алерталар (болжамды тор)
Latency p95 (core API): warning> 250 ms, critical> 400 ms қатарынан 5 мин.
Error rate: warning > 0. 5%, critical> 2% (эндпойнт бойынша, жаһандық емес).
DB RepLag: warning > 2 s, critical > 10 s.
Kafka consumer lag (time): warning > 30 s, critical > 2 min.
Web LCP (p75): warning > 2. 5 s, critical > 4 s.
Mobile ANR: warning > 0. 5%, critical > 1%.
ETL Freshness: warning > +15 min, critical > +60 min от SLA.
Статикалық + бейімделетін табалдырықтарды (маусымдық, күндізгі үлгілер), дедупликацияны және сервис/релиздер бойынша алерттерді топтастыруды пайдаланамыз.
6) Өнімділікті тестілеу
Түрлері: baseline, стресс, ұзақ (soak), хаос (degrade links/PSP).
Жүктеме профильдері: нақты трейдтер бойынша (distribution-based), «бурсттар», өңірлік шыңдар.
Мақсаттары: мақсатты RPS және mix операциялары кезінде SLO-ға қол жеткізу, backpressure валидациясы.
Прогонның өлшемдері: Throughput, Error%, p95 latency, GC үзілістер, CPU throttle, queue lag, cost/run.
Регрессия ережесі: p95 нашарламаса> 10% тең профильде, ал сұрау құны (CPU-ms/сұрау)> 15% өспесе, релиз сәтті болып саналады.
7) Сыйымдылықты жоспарлау және баға/өнімділік
Demand model: RPS сағат бойынша × орташа жұмыс/сұраныс (CPU-ms, IO-ops).
Headroom: сыни жолдар үшін 30-50% қор, P95 бойынша auto-scaling.
Cost KPIs: Cost per 1k requests, Cost per GB served, $ per 1 p. p. LCP жақсарту.
Кэш/теңдестіру: «cache ROI» = (CPU-ms үнемдеу − кэштің құны) деп санау.
Жылы және суық аймақтар: offload CDN/edge, репликалау «тек оқу».
8) Бақылау және бейіндеу практикасы
Трассировкалар: барлық hop's арқылы бөлінген trace-ID; ақылды тұқымдау (tail-based).
Метриктер: Prometheus/OpenTelemetry, есімдер мен лейблдердің бірыңғай нотациясы.
Логи: trace/span бойынша корреляциямен, лог-шуға budget, PII редакциялау.
Кескіндегіштер: CPU/Heap/Alloc/Lock profiles, үздіксіз кескіндеу (eBPF).
Үлгі даналар: p99 жарылыстарды нақты span/SQL/PSP-коллмен байланыстырамыз.
9) Релиздер мен командалардың өлшемдері (толықтығы үшін)
DORA: Deployment Frequency, Lead Time, Change Failure Rate, MTTR.
SPACE: қанағаттану, өнімділік, белсенділік, коммуникация, тиімділік.
Бұл өлшемдер темір туралы емес, өнімділіктің тұрақтылығына тікелей әсер етеді.
10) Қарсы үлгілер
Орташаны қуып жету: p95/p99 елемеу.
«Жаһандық» error rate: ауру эндпойнттарын жасырады.
Нұсқалар бойынша атрибуциясыз: клиенттің регрессиясын ұстау мүмкін емес.
Алерт-спам: гистерезисіз және маусымдылықты түзетусіз табалдырықтар.
«Соқыр» оңтайландыру: профильдеу мен трассировкалаудың болмауы.
UX және backend latency араластыру: клиенттік тәжірибе бойынша қате қорытындылар.
11) Чек парақтары
Метриканың бірыңғай стандарты
- Формулалары, бірліктері, иелері бар метриктер сөздігі
- Міндетті қайта өңдеу p50/p90/p95/p99
- Трейс-корреляция және лог-корреляция
- Тегтер: өңір, нұсқа, провайдер, құрылғы, желі арнасы
- Гистерезисі және дедупликациясы бар табалдырықтар
Шығару алдында
- Бейзлайн p95/p99 стейж және прода
- Канареялық трафик + A/B метриктерін салыстыру
- Тез қайтатын фича жалауы
- Бақылау жоспары (observability runbook)
Тұрақты
- Ең баяу топ-N сұрау ревю/SQL
- Кэш саясатының аудиті және TTL
- Freshness және БД репликацияларын тексеру
- Сыртқы провайдерлердің тозу тестілері (PSP, KYC)
12) Шағын плейбуктер (мысал)
p95/api/payments деградациясы
1. Error% және PSP сыртқы таймауттарды салыстыру.
2. Collback consumer lag кезегін тексеру.
3. p99 мысалдарын қарау: SQL/HTTP тар орын?
4. Анықтамалықтар/лимиттер кэшін қосу, N + 1 төмендету.
5. Бюджет: воркер ресурстарын 20% -ға уақытша көтеру, autoscale қосыңыз.
6. Post-fix: индекс бойынша (psp_id, status, created_at), ретрай-джиттер.
БД-да RepLag өсуі
1. «Ауыр» сұраулар мен ұзақ транзакцияларды тексеру.
2. Репликалау параллелизмін үлкейту, checkpoint.
3. Тек оқу үшін кэшке/репликаға жүктеп оқу.
4. Ең жоғары терезелерде - жартылай денорм + батчи.
13) Формулалар/SQL мысалдары (жеңілдетілген)
Error Rate эндпойнт бойынша
sql
SELECT endpoint,
100. 0 SUM(CASE WHEN status >= 500 THEN 1 ELSE 0 END) / COUNT() AS error_pct
FROM http_logs
WHERE ts >= now() - interval '5 minutes'
GROUP BY 1
HAVING COUNT() > 500;
Latency p95 (TDigest/Approx)
sql
SELECT endpoint, approx_percentile(latency_ms, 0. 95) AS p95_ms
FROM http_metrics
WHERE ts >= date_trunc('hour', now())
GROUP BY 1;
Consumer Lag (уақыт)
sql
SELECT topic, consumer_group,
max(produced_ts) - max(consumed_ts) AS lag_interval
FROM stream_offsets
GROUP BY 1,2;
Web LCP p75
sql
SELECT approx_percentile(lcp_ms, 0. 75) AS lcp_p75
FROM web_vitals
WHERE country = 'UA' AND device IN ('mobile','tablet')
AND ts >= current_date;
14) Дашбордтар мен есептілікке кірістіру
KPI карточкалары: p95 latency, error%, RPS, WoW/DoD трендтері бар saturation.
Топ-N «нашар» эндпойнттар/SQL/ресурстар, кликабельді drill-down → trace.
Клиенттің нұсқаларының корреляциясы: «нұсқа → p95 LCP/INP → конверсия» бағаны.
Әлем картасы: geo-latency (CDN), PSP latency өңірлер бойынша.
SLO панелі: SLO-дағы уақыт үлесі, SLO-дан ұшу, «қателер бюджеті».
15) Қорытынды
Өнімділік метрикасы - бұл жүйелік тәртіп: бірыңғай сөздік, перцентиль, атрибуция, жақсы бақылау және қатаң SLO. Техникалық (жасырындылық, лагтар, кэш-хиттер) және азық-түлік сигналдарын (KYC уақыты, p95 депозиті, LCP) біріктіре отырып, сіз тәжірибе сапасын және оны жеткізу құнын басқарасыз - болжамды және масштабталады.