GH GambleHub

Ենթակառուցվածքի ծախսերի օպտիմիզացումը

Live ռեզյումե

Ենթակառուցվածքի ֆինանսական արդյունավետությունը ապավինում է երեք բաների

1. Թափանցիկ չափումը (tegi, showback/chargeback, դոլար/արժեքի միավորը)։

2. Ինժեներական կարգապահություն (rightsizing, auto skayl, ճիշտ պահեստավորման դասարաններ/ցանցեր)։

3. Ճարտարապետական լուծումները (որտեղ «դուրս են գալիս» բայթերը և միլիսեքսունդները)։

Նպատակը 'նվազեցնել TCO-ն, պահպանելով SLO-ը և զարգացման արագությունը։

Բիզնես մետրերը և unit-economics-ը

/ 1000 RPS դոլարը հիմնական երթուղիներում 1000 հարցումների մշակման արժեքն է։

/ ms p95-ը 1 մսի վրա հետաձգման պոչի նվազեցման արժեքն է (կարևոր է փոխադարձության համար)։

/ խաղացող/ամիս կամ դոլար/դեպոզիտ - iGaming/fintech-ի համար։

TCO = comporation + storage + network egress + eded ծառայություններ + լիցենզիա + աջակցություն։

Տեխնիկական մեթոդի կապիտալիզացիան 'արձանագրել, թե որքան արժե «անպաշտպան» լապտենտությունը/լոբի արտահոսքը։

Օրինակ

Եթե API-ն արժե 120/ժամ դոլար և տալիս է 60k RPS նպատակային p95, ապա $/1000 RPS 242 դոլար։ Ցանկացած օպտիմիզացիա պետք է համեմատվի այս «միավորի արժեքի» հետ։

Բուլգարիզացիա և տեգիացիա

Թեգին պարտադիր է '«env», «owner», «ww.t», «ww.ru», «region», «cost-2019», «tier»։

Showback/Chargeback: Շաբաթական հաշվետվություններ թիմերի/ծառայությունների մասին։

«Ոչ» ռեսուրսների վերահսկումը 'առանց թեգերի, մենք չենք պտտվում, չենք երկարացնում։

SQL ուրվագիծ CPH զեկույցի համար (գաղափար)

sql
SELECT env, product, service,
SUM(cost_usd) AS cost_month,
SUM(rps) AS rps_month,
SUM(cost_usd)/NULLIF(SUM(rps)/1000,0) AS usd_per_1k_rps
FROM finops_daily
WHERE usage_date BETWEEN:from AND:to
GROUP BY 1,2,3;

Rightsizing եւ instans դասարաններ

CPU/Memory-ն ավելացնում է 'վերցրեք ավելցուկը բեռի տակ։ նվազեցրեք հարցումները/սահմանները մինչև «աշխատանքային կետ» CPU 50-70 տոկոսը։

Ինստանսների չափը 'հաճախ ավելի շահավետ է, քան N-ը M-ի փոխարեն մեծ (ավելի լավ է bin-packing + CA)։

ARM instans: ավելի էժան է համեմատական արտադրողականության դեպքում, եթե համադրենք։

Տաք/սառը փամփուշտներ 'պահեք մի փոքրիկ warm-պահուստ մշտական «ճարպի» փոխարեն։

Զեղչեր և սպառման մոդելներ

Reserved/Savings Plans/Committed Use: Ամրագրեք կայուն հիմքը (տնտեսության 40-70 տոկոսը)։

Spot/Systemptible: ոչ ռիթմիկ/ասինխրոն առաջադրանքների համար, CI, վերլուծաբաններ, քաշ-գողեր։

Mix-ռազմավարություն 'հիմքը reserved, piki-on-demand, ֆոն-spot։

HPA/KEDA-ն SLO ազդանշաններով (latency, queue lag, RPS), ոչ միայն CPU-ով։

Cluster Autoscaler-ը warm pooice-ով և image pre-pox-ի արագ սկսելու համար։

Scale-down-ը հիստերեզիայի հետ, որպեսզի չփորձեն կլաստերներ (anti-flapping)։

Ցանցը և egress - բյուջեի հանգիստ «հրշեջը»

CDN/tiered-cache/origin-shield նվազեցնում են egress origin-ից։

Սեղմումը (Brotli/gzip), webp/avif, 71-API (փոխանցել միայն փոփոխված դաշտերը)։

Անցեք արտաքին API-ի զանգերը, օգտագործեք keepalive/retry-budget։

Ավելի քիչ chats DC-ի ներսում 'event-driven, batching, իրադարձությունների ագրեգացիա։

Մոսկվան և տվյալները

Պահեստավորման դասարանները ՝ տաք (NVMe), տաք (gp2/gp3), սառը (S3/Glacier/արխիվ)։

Lifecycle-քաղաքականությունը '«հին» օբյեկտների ավտոմատ թարգմանությունը էժան դասարանների համար։

Սեղմումը/PPH-ում, TTL-ում ժամանակավոր սեղանների/սարքավորումների վրա։

Չափազանց վերարտադրումից հրաժարվելը 'խելացի RF, տնտեսական medapshot քաղաքականություն։

Քեշինգը 'Redis/Memcached-ի համար hot-2019-ի փոխարեն «թանկ» ընթերցումների փոխարեն։

Logs, metrics, treiss - վճարել մտքով

Լոգարանների սեմպլացիա (rate-limit մակարդակում/ձևանմուշով), «կառուցվածքային» լոգներ ճակատի փոխարեն։

Tail-based sampling-ը հետքերի համար (պահպանում ենք «պոչերը» p99 և սխալները, մնացածը ագրեսիվ կտրվածք է)։

Downsampling metric 'push-խաղացողների ագրեգացիան, high-res պահպանումը միայն 7-14 օր։

PII ֆիլտրը նվազեցնում է ռիսկերը և ծավալը։

Ճարտարապետությունը և «Միլիսեկունդայի արժեքը»

HTTP/2/3 + resumption: handshake-ից ավելի քիչ CPU/egress/լատենտ։

Քեշի և TTL-ի բանալին 'բարձր hit-ratio-ը ուղղակի գումար է (ավելի քիչ origin և DB)։

GRPC/պրոտոբաֆը ծառայության ծառայության համար 'ավելի քիչ բայթ։

Batch/stream ֆոնային խնդիրների համար; իդեմենտենտալությունը ավելի քիչ է, քան ռետերանները։

BD 'Մի պահեք «ամեն ինչ մեկի մեջ»' էժան KV/cashi հաճախակի կարդալու համար, վերլուծաբանը 'MSH-ի սյունակում։

Տվյալների սխեմաները ՝ կարճ դաշտեր/սեղմված տեսակներ, ինդեքսների կարդինալիտի վերահսկողություն։

DR, պահուստներ և մուլտֆիլմերի շրջան

Բիզնեսի նպատակը ՝ RTO/RPO-ն է RF-ի արժեքը։ Մի վճարեք 2019-ի համար, եթե բավարար է լոկոմոտիվը։

Պահեք սառը պահուստային պատճենները էժան դասարանում, կրկնօրինակը դիֆերենցիալ է։

ROR/տարածաշրջանների միասնական փաթեթը, յուրաքանչյուր գոտի ձգում է 60% պիկի տրամագիծը, դիմակայում է հարևանի մերժմանը առանց «ոսկու» ավելցուկի։

Շրջապատումներ և CI/CD/CD

Սթեյջինգների/ավելի բարձր միջավայրերի, Avto-TTL-ի։

Runner-a CI-ն սպոտի վրա, արտեֆակտների քեշը, զուգահեռ սահմանափակումները։

Թեստային տվյալները կոմպակտ են, գեներացիա on-the-fly, ոչ թե գիգաբայթ։

Կառավարումը և ժողովները

Վերանայեք ծավալներն ու տեսակները մեկ անգամ։

Մրցակցային bekap-պրովայդերը փաստարկն է։

Լիցենզիաներ (APM/անվտանգություն) 'հաշվեք դոլարը օգտակար ազդանշանի համար, ոչ թե «աշխարհի բոլոր լույսերի» համար։

Գործընթացներ և կառավարում

FinOps-արարողություն 'շաբաթական զեկույց թիմերի մասին, ամսական Cost Review (լավագույն 10 «արտահոսք», action items)։

Guardrails: քվոտաներ նախագծի/նյարդային սպեյսի, բյուջե-ալտերտայի, ռեսուրսների տեղակայման արգելք առանց պիտակների։

Blameless post-More-ը «գնային պատահականներով» (լոգարանների արտահոսք, runaway autoscale)։

IaC: Բոլոր լիմիտները, դասարանները, TTL-ը 'ռեպոզացիայում, PR-ռևոյում։

Խնայողությունների թուղթ

  • Tegi/showback/charjback ներառվել են, «ոչ» ռեսուրսներ չկան։
  • Rightsizing-ը պրոֆիլներով, ARM/այլ տեսակներ գնահատվում են։
  • Հանրային զեղչերը փակում են բազան, spot-ֆոն/վերլուծություն/CI։
  • HPA/KEDA-ը SLO-մետրիկների վրա, CA-ն warm փամփուշտներով։
  • CDN/tiered-cache, սեղմում, քեշի բանալին առանց աղմուկի։
  • Lenta.ru: Դասարաններ, lifecycle, TTL, kashi hot-2019 համար։
  • Logs/treiss 'սեմպիլացիա, tail-based, PII ֆիլտրեր։
  • DR RTO/RPO, սառը bekaps էժան դասարանում։
  • Շրջապատումներ Avto-TTL, CI spot-ում։
  • FinOps-ռիթմեր և guardrails IaC-ում։

Տիպիկ սխալներ

«Օպտիմիզացիան առանց մետրի»: Ոչ/1000 RPS ռուբլիա չի կարելի համեմատել տարբերակները։

Անջատված/չօգտագործվող ռեսուրսները կախված են ամիսներով։

«Ամեն ինչ» պահելը տաք դասարանում, lifecycle բացակայությունը։

Լոգները որպես «սև անցք» '100 տոկոսը ingest, սպառման 0 տոկոսը։

Auto-scail CPU-ով առանց հաշվի առնելու latency/google-ը և SLO-report-ը։

Չափազանց ագրեսիվ DR առանց բիզնեսի հիմնավորման։

Միկրովեռվիսները «վագոնի համար» - փխրուն խառնուրդի և կեղծ։

Մինի պլեյբուկները

1) Արագ հաշիվը (48 ժամ)

1. Sreez-ը լավագույն 10 ծառայություններից/տարածաշրջանից։ 2) Յուրաքանչյուրը $/1000 RPS, hit-ratio CDN, egress։

2. Անջատել TTL/kash-բանալիները, անջատել «աղմկոտ» լոգները։ 4) Ներառել lifecycle-ը S3/օբյեկտների վրա։

2) egress նվազումը 25 տոկոսով

1. Tiered-cache+shield, `stale-while-revalidate`. 2) Սեղմել պատկերները webp/avif-ում։

2. Peter-API-ը և gzip/brotli տեքստը։ 4) Ստուգել երկրորդ հարցումները/գրանցումները։

3) BD-ի ծախսերի կրճատումը

1. Լավագույն հարցումները (p95/IO) մեջբերում են ինդեքսները/բատչիզացիան։ 2) Hot-set в Redis.

2. Հին տվյալների արխիվացումը (TTL), read-replicas էժան պողպատի վրա։

4) Դադարեցնել «փղերը» սկեյլա

1. Ավելացնել stabilization/cooldown։ 2) MinReplicas> 0 պիկի վրա։

2. Կոննեկտների կանխատեսումը/TSA։ 4) Կտրեք ավելորդ գետերը։

«Տնտեսական» Nginx (սեղմում, քաշ, SWR)

nginx proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=EDGE:512m max_size=50g inactive=7d;

server {
listen 443 ssl http2 reuseport;

Compression brotli on; brotli_comp_level 5; gzip on;

Static: year, immutable location/assets/{
add_header Cache-Control "public, max-age=31536000, immutable" always;
try_files $uri =404;
}

Semi-dynamics: s-maxage + SWR location/catalog/{
proxy_cache EDGE;
add_header Cache-Control "public, s-maxage=600, max-age=120, stale-while-revalidate=900, stale-if-error=86400" always;
proxy_ignore_headers Set-Cookie;
proxy_pass https://origin_catalog;
}
}

Հատուկ iGaming/fintech համար

Պիկի (խաղեր/մրցույթներ) 'նախօրոք բարձրացնել «minReplicas» և տաքացնել CDN/TSA-ը, բայց պահել headro.ru կետով, միայն տաք ճանապարհների վրա (օրինակ և, լոբբի, խաղեր), մնացած' դեգրադային ռեժիմում։

Վճարումները/PSA: Գրողների քեշը (BIN, limits), գաղափարախոսությունը նվազեցնում է դուբլի արժեքը, առանձին egress-փամփուշտը պրովայդերների սպիտակ ցուցակների համար։

Անտիֆրոդ/բոտեր ՝ «մոխրագույն» երթուղիներ և էժան չելենջներ եզրին, փոխարենը թանկ խորը ստուգման փոխարեն, յուրաքանչյուր խնդրանքով։

Live-բովանդակություն/պրովայդերներ 'եզրին քեշը + հաճախականության սահմանափակումը։ CDN պայմանագրերը վերանայել մեծ։

Արդյունքը

Ծախսերի օպտիմիզացումը տարբեր մաքրություն չէ, այլ մշտական FinOps գործընթաց 'չափել արժեքը (դոլար/միավոր), ավտոմատիզացնել տնտեսական լուծումները (cash/TTL/սերմնավորում), օգտագործել զեղչեր և ռեսուրսների ճիշտ դասեր, պահպանել առաձգականությունը SLO-ի տակ և մի բարդացրեք ճարտարապետությունը, որտեղ այն չի վճարվում։ Այսպիսով, դուք կնվազեցնեք TCO-ն, պահպանելով ապրանքի արագությունը և պլատֆորմի կայունությունը։

Contact

Կապ հաստատեք մեզ հետ

Կապ հաստատեք մեզ հետ ցանկացած հարցի կամ աջակցության համար։Մենք միշտ պատրաստ ենք օգնել։

Սկսել ինտեգրացիան

Email-ը՝ պարտադիր է։ Telegram կամ WhatsApp — ըստ ցանկության։

Ձեր անունը ըստ ցանկության
Email ըստ ցանկության
Թեմա ըստ ցանկության
Նամակի բովանդակություն ըստ ցանկության
Telegram ըստ ցանկության
@
Եթե նշեք Telegram — մենք կպատասխանենք նաև այնտեղ՝ Email-ի дополнение-ով։
WhatsApp ըստ ցանկության
Ձևաչափ՝ երկրի կոդ և համար (օրինակ՝ +374XXXXXXXXX)։

Սեղմելով կոճակը՝ դուք համաձայնում եք տվյալների մշակման հետ։