Μετρήσεις επιδόσεων λειτουργίας και διαχείρισης →
Μετρήσεις επιδόσεων
1) Γιατί μετρήσεις επιδόσεων
Απόδοση είναι η ικανότητα ενός συστήματος να παρέχει στοχευόμενους SLO σε χρόνο απόκρισης και απόδοση με δεδομένο κόστος. Είναι αδύνατο χωρίς μετρήσεις:- να ανιχνεύει την υποβάθμιση πριν από τα συμβάντα,
- πρόβλεψη της ικανότητας και του προϋπολογισμού,
- σύγκριση εναλλακτικών λύσεων (cache vs DB, gRPC vs REST),
- διαχειρίζονται οπισθοδρόμηση μετά την απελευθέρωση.
Αρχές: ένα μόνο λεξικό μετρήσεων, συσσώρευση ανά εκατοστημόριο (p50/p90/p95/p99), ξεχωριστή λογιστική καταγραφή των «θερμών» και «ψυχρών» διαδρομών, πλαίσιο (έκδοση, περιοχή, πάροχος, συσκευή).
2) Ταξινόμηση των μετρήσεων
2. 1 Βασικά πλαίσια SRE
Τέσσερα χρυσά σήματα: Latency, Traffic, Errors, Saturation.
RED (για μικροϋπηρεσίες): Ρυθμός, σφάλματα, διάρκεια.
ΧΡΗΣΙΜΟΠΟΙΗΣΗ (για υλικό): Χρήση, κορεσμός, σφάλματα.
2. 2 Επίπεδα
Υποδομή: CPU, RAM, δίσκος, δίκτυο, εμπορευματοκιβώτια, κόμβοι.
Πλατφόρμα/Υπηρεσίες: Τελικά σημεία API, ουρές αναμονής, κρύπτες, βάσεις δεδομένων, λεωφορεία εκδηλώσεων.
Εμπειρία πελατών: Web Vitals, κινητά SDK, streaming, CDN.
Πλατφόρμα δεδομένων: ETL/ELT, ροές, αποθήκες, καθυστερήσεις ΔΙ.
Κρίσιμη επιχειρηματική ροή: έγκριση, KYC, καταθέσεις/πληρωμές, γύροι παιχνιδιών.
3) Κατάλογος βασικών μετρήσεων και τύπων
3. 1 API και μικροϋπηρεσίες
RPS (Αιτήσεις ανά δευτερόλεπτο).
Latency p50/p95/p99 (ms) - κατά προτίμηση «end-to-end» και «backend-only».
Ποσοστό σφάλματος (%) = 5xx + 4xx επικυρωμένα/όλα τα αιτήματα.
Κορεσμός: Μέσο μήκος αναμονής των εργαζομένων, αιτήματα πτήσης.
Ρυθμός ψυχρής εκκίνησης (FaaS).
Απενεργοποίηση/απόσυρση αιτήσεων.
Παράδειγμα SLO: p95 καθυστέρηση ≤ 250 ms με RPS έως 2k στην περιοχή ΕΕ-Ανατολής. σφάλματα ≤ 0. 5%.
3. 2 βάσεις δεδομένων
QPS/Συναλλαγές/s, avg/διάμεσος χρόνος ερωτήσεων, p95 ώρα ερωτήσεων.
Lock Waits/Deadlocks, Row/Index Hit Ratio, Buffer Cache Miss%.
RepLag (αντιγραφή), Checkpoint/Flush time, Autovacuum lag.
Καυτά κλειδιά/Skew - πάνω πλήκτρα N με φορτίο.
Ο τύπος για τις «Βασικές Αιτήσεις»: QPS/ vCPU_core_count → σήμα για τον τεμαχισμό.
3. 3 Cache και CDN
Αναλογία Hit (%), Εξώσεις/s, Latency p95, Ποσοστά μεγέθους αντικειμένου.
Προέλευση Offload (%) для CDN, TTFB, Stale-while-revalidate hit%.
3. 4 Ουρές αναμονής/ροές
Εισερχόμενη/έξοδος msg/s, Lag καταναλωτή, ποσοστό επανισορρόπησης.
Χρόνος επεξεργασίας p95, ρυθμός DLQ.
3. Υποδομές/Εμπορευματοκιβώτια
Χρήση ΚΜΕ%, CPU Throttle%, μήκος αναμονής.
Μνήμη RSS/Σύνολο εργασίας, OOM σκοτώνει, σφάλματα σελίδας.
IOPS/Latency/Throughput, Δίκτυο RTT/αναμεταδόσεις.
Κορεσμός κόμβου: εκκρεμείς λοβοί, πίεση (CPU/μνήμη/IO).
3. 6 Web Client (UX)
Βασικοί ιστοί: LCP, INP, CLS.
TTFB, FCP, TTI, Χρόνος πόρων (DNS, TLS, TTFB, τηλεφόρτωση).
Ποσοστό σφάλματος (JS), μακρές εργασίες, χρόνος αλλαγής διαδρομής SPA.
CDN Geo-Latency (εκατοστημόριο).
3. 7 Πελάτης κινητής τηλεφωνίας
Χρόνος έναρξης (κρύο/ζεστό), ρυθμός ANR, συνεδρίες χωρίς συντριβή%.
Δρομολόγια/συνεδρία δικτύου, Μέγεθος φορτίου, αποστράγγιση μπαταριών/συνεδρία.
Ποσοστό επιτυχίας εκτός σύνδεσης.
3. 8 Πλατφόρμα δεδομένων και υποβολή εκθέσεων
Freshness Lag (T-now → витрина), Throughput σειρές/s, Job Success%.
Κόστος ανά επεξεργασμένη φυματίωση, Skew ανά κόμμα, Late events%.
BI Time-to-Render p95 για πλήκτρα ταμπλό.
3. 9 Domain-κρίσιμη ροή (iGaming ως παράδειγμα)
Auth p95, KYC TTV (Time-to-Verify), κατάθεση/απόσυρση p95.
p95, καθυστέρηση κλήσης RNG, Provider RTT p95.
Ποσοστό επιτυχίας PSP, έρευνα Chargeback SLA.
4) Ομαλοποίηση, εκατοστημόρια και απόδοση
Εκατοστημόρια έναντι μέσων όρων: fix p50/p90/p95/p99 - μέσοι όροι εξομαλύνουν τον πόνο αιχμής.
Τμήματα: έκδοση εφαρμογής, περιοχή, πάροχος, δίαυλος δικτύου (4G/Wi-Fi), συσκευή.
Συσχέτιση: συσχετίζουμε τις μετρήσεις «backend-only» και «real-user» για τις αλυσίδες αιτιώδους συνάφειας.
Υποδείγματα/Ίχνη: συσχετίστε ακραία εκατοστημόρια με ίχνη.
5) Κατώτατα όρια και προειδοποιήσεις (κατά προσέγγιση πλέγμα)
Latency p95 (core API): προειδοποίηση> 250 ms, κρίσιμη> 400 ms 5 min στη σειρά.
Ποσοστό σφάλματος: προειδοποίηση> 0. 5%, κρίσιμο> 2% (τελικό σημείο, όχι παγκόσμιο).
DB RepLag: προειδοποίηση> 2 s, κρίσιμη> 10 s.
Υστέρηση (χρόνος) καταναλωτή του Κάφκα: προειδοποίηση> 30 s, κρίσιμη> 2 λεπτά.
Web LCP (p75): προειδοποίηση> 2. 5 s, κρίσιμη> 4 s.
Κινητό ANR: προειδοποίηση> 0. 5%, κρίσιμης σημασίας> 1%.
ETL Φρεσκάδα: προειδοποίηση> + 15 λεπτά, κρίσιμη> + 60 λεπτά от SLA.
Χρησιμοποιούμε στατικά + προσαρμοστικά κατώφλια (εποχικότητα, ημερήσια πρότυπα), αφυδάτωση και ομαδοποίηση των καταχωρίσεων ανά υπηρεσίες/κυκλοφορίες.
6) Έλεγχος απόδοσης
Τύποι: γραμμή βάσης, στρες, παρατεταμένη (εμποτισμός), χάος (σύνδεσμοι υποβάθμισης/PSP).
Προφίλ φορτίου: για πραγματικές συναλλαγές (βάσει διανομής), «εκρήξεις», περιφερειακές κορυφές.
Στόχοι: Επίτευξη SLO με στοχευόμενες εργασίες RPS και συνδυασμός λειτουργιών, επικύρωση αντίθλιψης.
Εκτελέστε μετρήσεις: Throughput, Error%, p95 latency, GC pause, CPU ghottle, queue lag, cost/run.
Κανόνας παλινδρόμησης: η απελευθέρωση θεωρείται επιτυχής εάν το p95 δεν υποβαθμίζεται> 10% με ίσο προφίλ και το κόστος της αίτησης (CPU-ms/request) δεν έχει αυξηθεί> 15%.
7) Σχεδιασμός χωρητικότητας και τιμή/απόδοση
Μοντέλο ζήτησης: RPS ανά ώρα × μέση εργασία/αίτημα (CPU-ms, IO-ops).
Περιθώριο 30-50% για κρίσιμες διαδρομές, αυτόματη κλιμάκωση ανά P95.
Κόστος KPI: Κόστος ανά 1k αιτήσεων, κόστος ανά GB εξυπηρετούμενο, $ ανά 1 p. p. LCP βελτιώσεις.
Caching/απομαλοποίηση: διάβασε «cache ROI» = (CPU-ms εξοικονόμηση − cache κόστος).
Θερμές και ψυχρές περιοχές: εκφόρτωση σε CDN/άκρη, αντιγραφή μόνο ανάγνωσης.
8) Παρατηρησιμότητα και πρακτικές διαμόρφωσης προφίλ
Ίχνη: κατανεμημένα ιχνοστοιχεία σε όλους τους λυκίσκους. η δειγματοληψία είναι έξυπνη (με βάση την ουρά).
Μέτρηση: Προμηθέας/OpenTelemetry, μοναδικός συμβολισμός ονομάτων και ετικετών.
Αρχεία καταγραφής: με ιχνοστοιχεία συσχέτισης/κλίμακας, προϋπολογισμό για καταγραφή θορύβου, επεξεργασία PII.
Προφίλ: προφίλ CPU/Heap/Lock Lock, συνεχής διαμόρφωση προφίλ (eBPF).
Περιπτώσεις δειγματοληψίας: συσχετισμός εκρήξεων p99 με συγκεκριμένη κλίμακα/SQL/PSP κλήση.
9) Ελευθέρωση και ομαδικές μετρήσεις (για πληρότητα)
DORA: Συχνότητα εγκατάστασης, χρόνος αιχμής, ρυθμός αστοχίας αλλαγής, MTTR.
ΔΙΑΣΤΗΜΑ: ικανοποίηση, απόδοση, δραστηριότητα, επικοινωνία, αποδοτικότητα.
Αυτές οι μετρήσεις δεν αφορούν τον σίδηρο, αλλά επηρεάζουν άμεσα τη σταθερότητα της απόδοσης.
10) Αντι-μοτίβα
Κυνηγώντας μέσους όρους: αγνοώντας p95/p99.
«Παγκόσμιο» ποσοστό σφάλματος: κρύβει επώδυνα τελικά σημεία.
Χωρίς απόδοση από εκδόσεις: είναι αδύνατο να συλλάβετε οπισθοδρομήσεις πελατών.
Ανεπίσημα μηνύματα συναγερμού: όρια χωρίς υστερία και διόρθωση εποχικότητας.
Τυφλή βελτιστοποίηση: καμία ταξινόμηση ή ίχνη.
Ανάμειξη UX και καθυστέρηση υποστήριξης: εσφαλμένα συμπεράσματα από την εμπειρία του πελάτη.
11) Κατάλογοι ελέγχου
Ενιαίο μετρικό πρότυπο
- Λεξικό μετρικών με τύπους, μονάδες, ιδιοκτήτες
- Υποχρεωτικά εκατοστημόρια p50/p90/p95/p99
- Συσχέτιση ιχνοστοιχείων και συσχέτιση ημερολογίου
- Ετικέτες: περιοχή, έκδοση, πάροχος, συσκευή, κανάλι δικτύου
- Κατώφλια με υστέρηση και αφαίρεση
Πριν την απελευθέρωση
- Αρχική τιμή p95/p99 στο στάδιο και το prod
- Canary κίνηση + A/B μετρική σύγκριση
- Fast Rollback Flag Feature
- Εγχειρίδιο παρατήρησης
Τακτικά
- Slowest Top N Query/SQL Review
- Πολιτικές λογιστικού ελέγχου και TTL
- Έλεγχος της φρεσκάδας και της αντιγραφής βάσεων δεδομένων
- Δοκιμές υποβάθμισης εξωτερικού παρόχου (PSP, KYC)
12) Mini playbooks (παράδειγμα)
Αποικοδόμηση p95/api/πληρωμές
1. Ελέγξτε το σφάλμα% και τα εξωτερικά χρονοδιαγράμματα PSP.
2. Ελέγξτε τις συλλογές αναμονής των καταναλωτών.
3. Δείτε p99 παραδείγματα εντοπισμού σημείων συμφόρησης SQL/HTTP
4. Ενεργοποίηση καταλόγου/ορίου μνήμης, μείωση N + 1.
5. Προϋπολογισμός: προσωρινή αύξηση των πόρων των εργαζομένων κατά 20%, συμπεριλαμβανομένης της αυτόματης κλίμακας.
6. Μετά τον καθορισμό: δείκτης ανά (psp_id, κατάσταση, created_at), retray-jitter.
Αύξηση του RepLag σε DB
1. Ελέγξτε τις «βαριές» αιτήσεις και τις μακρές συναλλαγές.
2. Αύξηση του νομίσματος αναπαραγωγής, σημείο ελέγχου συντονισμού.
3. Αφαιρούμενη μνήμη/αντίγραφο μόνο για ανάγνωση.
4. Στα παράθυρα αιχμής - μερικό denorm + παρτίδες.
13) Παραδείγματα τύπων/SQL (απλοποιημένα)
Ποσοστό σφάλματος ανά τελικό σημείο
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 (TDiest/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;
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 καθυστέρηση,% σφάλμα, RPS, κορεσμός με τάσεις WoW/DoD.
Top N «χειρότερα» τελικά σημεία/SQL/πόροι, clickable τρυπάνι-κάτω ίχνος.
Συσχέτιση έκδοσης πελάτη: στήλη «έκδοση → p95 LCP/INP → μετατροπή».
Παγκόσμιος Χάρτης: γεωγραφική καθυστέρηση (CDN), υστέρηση PSP ανά περιφέρεια.
Πίνακας SLO: μερίδιο χρόνου στην SLO, συντριβές από την SLO, «προϋπολογισμός σφάλματος».
15) Σύνολα
Οι μετρήσεις επιδόσεων είναι μια πειθαρχία συστημάτων: μονό λεξιλόγιο, εκατοστημόριο, απόδοση, καλή παρατηρησιμότητα, και αυστηρές SLO. Συνδυάζοντας τεχνικά (καθυστέρηση, υστέρηση, κρύπτες) και σήματα προϊόντων (χρόνος KYC, κατάθεση p95, LCP), διαχειρίζεστε την ποιότητα της εμπειρίας και το κόστος της παράδοσής της - προβλέψιμη και κλιμακωτή.