Energiýa tygşytlaýjy binagärlik
1) Esasy ýörelgeler
1. Energy as a First-Class Metric. Jouli/haýyş, Wt/ýadro, kWt/TB-aý - p95 we bahasy ýaly KPI.
2. Carbon-/Energy-Aware Orchestration. Ýüküň tertibi we wezipeleriň ýerleşdirilmegi toruň we maglumat merkezleriniň CO ₂ -intensiwligini göz öňünde tutýar.
3. Data Minimization. Az maglumat → az CPU/IO → az energiýa we sowadyş.
4. Right-sizing & Right-placing. Çeşmäniň dogry görnüşini we ululygyny saýlaýarys we ulanyja/maglumatlara has ýakyn ýerleşdirýäris.
5. Simplicity Wins. Artykmaç abstraksiýa we söhbetdeşlik = goşmaça energiýa.
2) Metrikler we modeller
2. 1 Infrastruktura
PUE (Power Usage Effectiveness): 'PUE = Maglumat merkeziniň umumy energiýasy/IT ýüküniň energiýasy' (1-e näçe ýakyn bolsa, şonça gowy).
CUE (Carbon Usage Effectiveness): 'CUE = CO ₂ e/Energy IT'.
WUE (Water UE): kWt sagatda litr suw - suw ýetmezçiligi bolan sebitler üçin möhümdir.
2. 2 Amaly
J/req (soraga jouli): 'E _ req = ∫ P (t) dt/ N_req'.
kWh/ETL job, kWh/million habar, kWh/model okuw.
CO e/ficha ýa-da CO e/user: 'CO e = kWh (wagt, sebit)'.
2. 3 Uglerod modeli
carbon(req) = energy(req) grid_emission_factor(region, time)
energy(req) = cpu_j + mem_j + io_j + net_j
Nirede 'grid _ emission _ factor' sagatda we sebitde üýtgeýär (karbon-habarly meýilnamalaşdyrmak).
3) Enjam we ýerine ýetiriş derejesi
CPU arhitekturalary: ARM/Graviton/RISC-V köplenç tor we Java/Go ýükleri üçin iň gowy "W/perf" berýär; x86 ýokary taktlar we käbir SIMD üçin güýçli bolup galýar.
GPU/TPU/beýleki tizlendirijiler: ML/wektor analitikasynda köplenç has gowy "J/operasiýa" berilýär.
DVFS we power capping: ýygylygyň dinamiki peselmegi we möhüm däl meseleler üçin TDP çäklendirilmegi.
Uklamak/awto-öçürmek: workerler we fon üçin agressiw 'idle' syýasatlary.
Ýat: NUMA-lokalizasiýa we sahypadaky ýalňyşlyklaryň azalmagy tekerleriň we keşleriň energiýa çykdajylaryny azaldýar.
4) Binagärlik nusgalary
4. 1 "Söhbetdeşliksiz" mikroservisler
RPC-hoplary gysgaldyň: agregasiýa şlýuzlary, kompozit endpointler.
gRPC/HTTP/2/3 REST ýerine.
Batch + Async: ownuk amallary ýelimläň.
4. 2 "Ýyly" we "sowuk" ýollar
Seýrek, agyr haýyşlar üçin - as-needed infrastruktura (on-demand, funksiýalar/serverless).
Gyzgyn ýollar - uzak ömürli birleşmeler we howuzlar.
4. 3 Coalescing bilen kesmek
Coalescing soraglary, keş sypdyrmalarynyň tupanlarynyň öňüni alýar.
Stale-while-revalidate: köne berýäris, gözbaşyna syýahaty tygşytlaýarys.
4. 4 Ammar tiringi
Hot/Warm/Cold/Archive: NVMe → SSD → gijikdirilen obýekt → buzluk.
Awtomatiki ILM/TTL: az spin/IO → az energiýa.
4. 5 Uglerod bilimli meýilleşdiriji (Carbon-Aware)
Wagtyň geçmegi bilen geçirilýän joblar (ETL, analitika, okuw) - "ýaşyl" sagatlara/sebitlere.
kWt sagatda ýollaryň sebitleýin egresi we CO ₂ - lokallaşdyryň.
python def schedule(job):
windows = get_green_windows(job.region_candidates, next_48h)
pick = argmin(windows, key=lambda w: w.grid_factor job.energy_estimate / w.capacity)
enqueue(job, region=pick.region, start=pick.start)
4. 6 De-duplikasiýa we "akylly" gysyş
Gysyş tory/diski tygşytlaýar, ýöne CPU bahasy. Uýgunlaşmak: uly ýük, pes CPU kontury.
5) Kod we maglumatlaryň netijeliligi
Algoritm: asimptotikany azaltmak> sazlamak. "Gyzgyn nokatlar" profilini düzüň.
Ýat bölekleri: buferleri kärendesine almak, obýektleriň howuzlary - az GC/energiýa.
Formatlar: analitika üçin binar protokollar, sütün formatlary (Parquet/ORC), açarlaryň zipf-paýlanyşyny kesleşende göz öňünde tutuň.
I/O: gaplamak, wektorizasiýa, asinhron giriş/çykyş.
Akym vs doly skanlar: maglumat çeşmesine push-down süzgüçleri.
Gyradaky funksiýalar (edge): ses hadysalaryny öňünden jemlemek, zyňmak.
E_req ≈ (cpu_ms W_cpu/ms) + (mem_ms W_mem/ms) +
(io_read_mb W_io/mb + io_write_mb W_io/mb) +
(egress_mb W_net/mb)
6) ML we maglumatlar: energo-patternler
Modelleriň arhitekturasy: kiçi/ýöriteleşdirilen modeller, distilýasiýa, kwantasiýa (int8/4-bit), sparsity.
Okuw: batch-ululyk utilizasiýasy, mixed precision (FP16/BF16), barlag nokatlary, irki duralga.
Inferens: batch + mikrobatçi, kompilýasiýa (TensorRT/ONNX Runtime), dinler bilen triton-serwer. batching.
Fiçler we fiçler: köplenç ulanylýan fiçleri kesmek, çeşmäni ýüklemegiň ýerine hiliň peselmegi.
7) Tor we teswirnamalar
Keep-alive, HTTP/3, QUIC, handshake iň az.
CDN + edge-keshi: gysga marşrutlar → az kWt· sagat.
Profil bilen gysyş: uly çeşmeler üçin zstd/brotl, kiçi/CPU-gymmat ýollar üçin gysgyçsyz.
Köp sebitli köpeltme - diňe RTO/RPO hakyky zerur bolanda.
8) Telemetriýa we "energo-observability"
8. 1 Ýygym
Energiýa/kuwwat hasaplaýjylary (IPMI/RAPL/Node Exporter power), GPU/TPU telemetri.
Programma derejesinde: J/req atributy - CPU/IO wagtynyň sempleri we kalibrleme koeffisiýentleri arkaly.
Yzarlamak bilen baglanyşyk: 'energy _ j', 'carbon _ g', 'grid _ factor', 'region'.
8. 2 Metrikler we aladalar
Energy per SLI: `J/p95`, `J/txn`.
Carbon budget: önümler boýunça CO ₂ e aýlyk çäkleri.
Drift: 'J/req'> X% bazline.
9) CI/CD, geýt we synag
Perf-smoke + Energy-smoke PR-da: gysga ssenariýa, ýygnamak 'J/req' we regress-gate.
Esasy energiýa: standarty saklaýarys (CPU/GPU, J/req flemgraflary).
Policy as Code: tassyklanan kadadan çykma bolmazdan 'Δ J/req> 10%' bolsa, deploýyň gadagan edilmegi.
Bulam-bujarlyk + energiýa modelleri: endikleriň pese gaçmagy J/req-i çäklerden ýokary galdyrmaly däldir (retraj tupanlarynyň ýerine şeýding/pese gaçmak).
10) Ýüküň we wagtyň dolandyrylmagy
Wagt geçişi (load shifting): hereketsiz meseleler - "ýaşyl" sagatda.
Dinamiki SLO: fon üçin energiýa tygşytlamak üçin gizlinligi artdyryp bilersiňiz.
Ileri tutulýan ugur: möhüm haýyşlary "energiýa kwotalary" alýar, pes ileri tutulýan ugur - yza süýşürilýär.
python if energy_budget.low() and req.priority == "low":
return 429_DEFER process(req)
11) Howpsuzlyk, gizlinlik we gabat gelmek
Enjamyň tizlenmegi bilen şifrlemek (AES-NI/ARMv8 Crypto) - az CPU/W.
PII minimallaşdyrmak saklamak/seljermek ýüküni azaldýar.
Logi: sempleme, maskalama we TTL - ýygnamak/saklamak energiýasyny tygşytlaýar.
12) Anti-patternler
Hyzmatlaryň arasynda artykmaç mikroservislilik we "söhbetdeşlikler".
Global replikasiýa "mümkin boldugyça".
Nol TTL kesiş we stale gadaganlygy.
Süzgüçsiz/indekssiz/partiýasyz doly skanerler.
Jittersiz hemişelik retralar → Tor tupanlary.
Ewristika ýeterlik bolan ýerlerde "uly modeli" ulanmak.
Bloglaryň agyr formatlary we "hemme zady hemişelik ýazýarys".
13) Kiçi reseptler we mysallar
13. 1 Jogapyň uýgunlaşdyrylan gysylmagy
python def maybe_compress(resp, cpu_load, size):
if size > 641024 and cpu_load < 0.6:
return compress_zstd(resp, level=5)
return resp # мелкие/дорогие по CPU ответы не сжимаем
13. 2 Batçing infenersiniň ewristikasy
python batch = collect_until(max_items=64, max_wait_ms=8)
result = model.infer(batch) # ↑ утилизация ускорителя, ↓ Дж/запрос
13. Wakalar üçin 3 ILM/TTL
yaml dataset: events lifecycle:
- hot: 7d # NVMe
- warm: 90d # SSD + zstd
- cold: 365d # object store
- delete
13. 4 Uglerod bilimli ETL
python co2 = kwh_estimate(job) grid_factor(region, now())
if co2 > job.threshold and job.deferable:
delay(job, until=next_green_window())
else:
run(job)
14) Arhitektoryň çek-sanawy
1. Energiýa (J/req, kWh/job) we uglerod (gCO ₂ e/req) boýunça SLI kesgitlenildi?
2. Hyzmatlar/aýratynlyklar/tenantlar boýunça energiýanyň atributiýa modeli barmy?
3. Uglerod bilimli meýilleşdiriji göçürilen meseleler üçin girizildi?
4. Mikroservisler söhbetdeşligi azaldýarmy (agregasiýa, batçi, gRPC/HTTP3)?
5. Coalescing we stale-while-revalidate re modeimi bilen nagt pullar düzüldimi?
6. Ammar bar, ILM/TTL bar, maglumat formatlary optimalmy?
7. ML: distilýasiýa/kwantasiýa/batching/inferens kompilýasiýa ulanylýar?
8. CI/CD-de J/req Δ energo-smoke, bazline we geýtlar barmy?
9. Edge/CDN/sebitleýin ýerleşişi egress we ugurlary azaldýarmy?
10. Workerler üçin DVFS/power-capping/idle goşuldymy?
11. Loglar/metrikler/treýsler semplenýärmi we ähmiýeti boýunça retenşnleri barmy?
12. "Ýaşyl" runbook resminamalaşdyryldy: energiýa ýetmezçiligi ýüze çykanda näme öçürmeli/zaýalanmaly?
Netije
Energiýanyň tygşytly arhitekturasy "iň soňky optimizasiýa" däl-de, algoritmlerden we formatlardan başlap, "ýaşyl" sebitde ýerleşdirmäge we CI/CD-de geýtlere çenli strategiki hil gatlagydyr. Joulini ölçäň, uglerody göz öňünde tutup meýilleşdiriň, täsirleri ýönekeýleşdiriň, maglumatlary gysgaldyň we tizlendirijileri "J/operasiýany" peseldýän ýerinde ulanyň. Şeýlelik bilen, has çalt, arzan we ekologiýa taýdan arassa platforma alarsyňyz - azyk gymmaty boýunça eglişik etmezden.