Վիրահատական ծախսերի օպտիմիզացումը
1) Նպատակներն ու սկզբունքները
Նպատակը 'նվազեցնել բիզնեսի արժեքի միավորի ծախսերը, պահպանելով SLO և ապրանքի որակը։
Սկզբունքները ՝ measure proptimize protomate; ROI-ի գերակայությունը; «SLO-first» (խնայողությունները չեն վնասում օգտագործողի փորձին); ծախսերի թափանցիկությունը (շոկուբեկ/չարդբեկ)։
2) Ծախսերի տաքսոնոմիա (որն է լավատեսությունը)
Ենթակառուցվածքը ՝ CPU/GPU), storage (SSD/obert), network/egress, CDN/WAF, պահեստային պատճեններ, տրամաբանություն/աստղադիտարան։
Տվյալները և սթրիմինգը ՝ բրոքերներ (Kafka), MSH/OLAP (ClickHouse/BigQuery), քեշներ (Redis/Mem), ETL/նվագախմբեր։
Հիբրիդային շղթա 'պրոցեսինգ, KYC/AML, սկորինգը, հակաֆրոդը, chargeback ֆոնդը։
Ապրանքը/մարքեթինգը 'բոնուսներ, ֆրի մեջքեր, աֆֆիլատներ (CPA/RevPort), փաթեթների գնումը, պրոմո-ivents։
Վիրահատություններ/մարդիկ 'sapport, ռիսկի վերլուծություն, կոմպլենս, ձեռքի վորկֆլոու։
Լիցենզիաներ/գործընկերներ 'խաղերի շարժիչներ, նախկին կազինոյի պրովայդերներ, SaaS ծառայություններ։
3) Մետրիկի և unit տնտեսագիտության
Հիմնական ցուցանիշները
/ RPS, դոլար/գործարք (դեպոզիտ/տոկոսադրույք/եզրակացություն), դոլար/ակտիվ խաղացող/ամիս, դոլար/GB-ingest logs, դոլար/TB-պահեստավորում/ամիս, դոլար/ML-infess։
Համախմբված KPI: Cost to Serve-ը հատվածի վրա (geo/սարք/ջրանցք)։
Բանաձևը (մոտավորապես)
$/RPS = (OPEX_infra + OPEX_data + OPEX_3rd + OPEX_ops) / avg_RPS
/ գործարք = (OPEX _ platform + fees _ payme + antifraud + supert )/N _ tx
LTV: CAC: CBS-ը հիմնական հարաբերությունն է (Lifetime Value: Customer Acquisics Cost: Cost to Serve)։
4) FinOps-2019 և SLO-aere խնայողությունները
Showek/charjback 'ապրանքների/թիմերի/ծառայությունների ծախսերի բաշխումը։
Բյուջեներն ու ալերտները ՝ ամսական սահմանները և շեղումների նախազգուշացումները։
SLO-first 'ցանկացած օպտիմիզացիա անցնում է ստուգման' SLI նորմալ։ p95/p99, error-rate, հասանելիություն։
Փորձարկումները ՝ A/B խնայողությունները (միացրեցին ագրեսիան, նվազեցրեցին ռետենշինը, SLI-ը չփչացրեց)։
5) Compics: right-sizing և ավտո սկեյլինգ
Right-sizing: Մենք ավելացնում ենք CPU/mem, կրճատում ենք pod/VM չափսերը, մաքրում ենք «պահեստը հանուն շարժիչների»։
Autoscaling: HPA/KEDA բեռնափոխադրումների/հերթերի վրա; գիշերային/տարածաշրջանային սպադները ագրեսիվ scale-in են։
Գների մոդելները ՝ Reserved/Savings պլանները, Spot/Systemptible-ը batch/ETL-ի համար, տարածաշրջանների հիբրիդ։
Ռանտայմի նորարարությունները 'JVM/Go/Node-ի ժամանակակից տարբերակները կարող են տալ CPU-ի 10-30 տոկոսը։
6) Պահեստավորում և տվյալներ
Պահեստավորման դասարանները 'տաք SSD OLTP-ի համար, սառը/արխիվը պատմության և լոգարանների համար։
TTL/retention: ինդեքսների/լոգարանների/ուղիների կանոնները (օրինակ, 7-14 օր p99-մանրամասները, ագրեգատները ավելի երկար են)։
Սեղմումը և ձևաչափը 'Parquet/ORC lake, ZSTD լոգարանների համար, deduplication։
MSH/OLAP ՝ նյութականացված գեյ/ագրեգատներ, «թանկ» հարցումների բեռնումը։ սահմանափակում ad-hoc.
Striming: կոմպակտ տեղանուններ, batch-size/acks լավատես են/www.g, fan-out վերահսկողությունը։
7) Ցանց, egress և CDN
Նվազագույնի հասցնել egress 'քեշինգը եզրին, պինինգը նշված է տարածաշրջանի մեջ/պիրա։
CDN տնտեսությունը 'cache-hit աճը տարբերակման, խելացի TTL-ի, image-resize վրա։
Սպիտակուցիա և արձանագրություններ ՝ HTTP/2/3, gzip/2019, Pro P/AVIF լրատվամիջոցների համար։
API-ի անհեթեթությունը 'ագրեգացիան/բատչինգը, gRPC-ի արձանագրությունները չատների/սթրիմինգի համար։
8) BD և kash: դոլար/հարցում/
Ավելացումը 'առաջին N դանդաղ և հաճախակի հարցումներ; ինդեքսներ, որոնք ծածկում են հարցումները։
CQRS/ընթերցողական ակնարկներ 'OLTP բեռնումը read-replica և denormalization միջոցով։
Քեշի ռազմավարությունները 'հիմնական գրացուցակների քեշը, session/token, տաք վաղ թերթերը։ հետևում ենք hit-ratio և eviction-ին։
Գործարքների սահմանափակումը 'կարճ գործարքներ, պագինացիայի սահմաններ և N + 1 հարցումներ։
Ճարտարապետությունը 'async/հերթը սինխրոն շղթաների, idempotency և retry-ջիթերի փոխարեն։
9) Աստղադիտարան և լոգներ
Sampling-ը 'դինամիկ, երբ պատահում ենք, ավելացնում ենք։
Մարգագետինները 'կառուցվածքային, առանց DEBUG-ի ավելցուկ մակարդակի երկարացման։
Ֆիլտրում ingest: Մենք կտրում ենք աղմուկը (health-chekam - ոչ), մետրի միավորումը հում լոգարանների փոխարեն։
SLO-dashbords: ավելի քիչ ցրված բջիջները ավելի քիչ են, քան metric-ը, քան ingest-ը։
10) Վճարումներ և հակաֆրոդ (արտաքին)
Պրովայդերների Mics-ը 'ամենափոքր երթուղիացումը, հաշվի առնելով փոխադարձությունը/ռիսկի սկորինգը։
Ձախողումների նվազումը 'ճիշտ 3-D Secure/կրկնվող փորձերը ավելի քիչ են, քան բեռը և բեռը։
Հակաֆրոդ կանոնները 'targeting ռիսկի, ոչ թե «բոլորը», որպեսզի չվճարեն ստուգման համար։
Chargeback-վերահսկումը 'ինդուկտիվ ձգումներ անոմալիաների վրա և եզրակացություններ։
11) Բոնուսները, ֆրրի մեջքը և մարքեթինգային ծախսերը
Լիմիտներ և ձագեր. Բոնուսների կերպարը LTV/ռիսկի սկորինգը ավելի քիչ է, քան «խաչմերուկը»։
Anti-abuze: հաշիվների, velocity կանոնների, promo-ի եզրակացության համար։
Տե՛ ս ՝ SmartLink-ը և post-click-ֆիլտրերը, low-quality աղբյուրների փոխպատվաստումը, պատուհանների հետադարձ կապը։
Կիսագունդների տնտեսությունը 'մրցանակային ֆոնդը սպասվող uplift ARPU/rentenshn; հետևում ենք ROI-ին։
12) Վիրահատություններ և մարդիկ
Ռուտինի ավտոմատիզացիան 'պլեյբուկներ, ռենբուկներ, շարժիչների ավտոմատիզացիա։
Sapport: մակրո, առաջին մակարդակի բոտեր, VIP գերակայություն։ www.f-2019 անձնական գրասենյակում։
QA-ն և շրջակա միջավայրը 'ephemeral-env-PR-ով, թեստային տվյալները որպես ծառայություն, անջատել մնացած ստենդները։
13) Governational-ը և գործընթացները
Policy-as-Code: ռեսուրսների սահմանափակումներ, թանկ ինստանսների արգելք առանց հիմնավորման։
Change to 'kanareech ենթախմբերը ավելի քիչ են, քան մատնահետքերը և վերափոխումները։
Ծախսերի կատալոգը 'միասնական թեգեր/պիտակներ բոլոր ռեսուրսների համար։ «զեկույցը, թե ով և ինչի համար է վճարում»։
Ամեն շաբաթ, առաջին 10 «բյուջեի հրշեջներ», գործողությունների պլանը և սեփականատերերը։
14) Ճանապարհի քարտեզը (12 շաբաթ)
Շաբաթներ 1-2 ՝ ծախսերի, թեգերի/մետաղների, համախմբված դաշբորդի/RPS, խնայողությունների նպատակներ։
3-4: right-sizing, HPA/KEDA, լոգարանների մաքրումը/TTL, ուղու սեմպլինգը։
5-6: BD/kash: ինդեքսներ, տաք բանալիներ, դենորմալիզացիա, սագինացիաներ։
7-8: CDN/egress: Քեշի քաղաքականություն, ագրեսիա, մեդիա օպտիմիզացիա։
9-10: Վճարումներ/հակաֆրոդ 'պրովայդերների երթուղի, ձախողումների նվազում։
11-12: Բոնուսները և կոմպոզիցիաները 'կերպարը, anti-abuz, wwww.low-ROI քարոզարշավները։
12-րդ շաբաթից հետո 'ավտոպիլոտ' շոկուբեկ/charjback, եռամսյակային բյուջեներ/արժեքի միավորներ։
15) Դաշբորդի
Exec: OPEX-ը կատեգորիաներում, դոլարով/RPS, դոլար/գործարք, ROI քարոզարշավներ, vs խնայողություններ։
Դրանք ՝ CPU/Memory/IO, autoscaling events, cache-hit, p95/p99, ingest logs/day, egress GB/day։
Տվյալները 'հարցումների/սկանների արժեքը, retention, տոպիկների/աղյուսակների չափը, cost per query-ը։
Վճարումները 'հեղինակային իրավունքի փոխարկումը, միջին հանձնաժողովը, chargeback մասը, KYC ժամանակը։
Բոնուսներ ՝ CPA/RevPO/ARPU uplift, աբյուզի մասը, GGR-ի վրա net ազդեցություն։
16) Արտեֆակտների օրինակները
Cost Playbook (ծառայության համար) 'ներկա արժեքը, վարորդները, միջոցները (impact դոլար/բարդություն), սեփականատերը, ժամանակահատվածը։
Capacity & Cost Sheet: headrope, դոլար/RPS-ից առաջ և հետո, SLO-ի ազդեցությունը։
Policy Catalog 'instans, limits, բացառություններ և հարցման գործընթացը։
Runbook «Գիշեր/Շաբաթ» 'scale-in/TTL ագրեսիվ կանոնները, ոչ քննադատական ջո դադարը։
17) Լավագույն 20 արագ միջոցներ («quick cors»)
1. Միացրեք autoscaling-ը և կրճատեք «կոտրված» ենթատեսակները։
2. Կտրեք retention logs և ուղիներ դեպի բիզնես անհրաժեշտ։
3. Sampling-ը + ագրեգացիան հում իրադարձությունների փոխարեն։
4. Տեղափոխել ծանր հաշվետվություններ գիշերային batch-պատուհանի/մատրվայով։
5. Բարձրացնել CDN cache-hit-ը տարբերակի միջոցով/TTL-ի միջոցով։
6. Pro P/AVIF և lazy-loading պատկերները։
7. Այրել egress տարածաշրջանի պինինգի և ագրեսիայի միջոցով։
8. Ինդեքսները առաջին 10 դանդաղ պահանջներին, դիմադրության սահմաններին։
9. Քաշել տաք տվյալները/ցուցակները։
10. Անջատել չօգտագործված ֆիչերը/էնդպոինտները։
11. Reserved/Savings պլանները մշտական բեռի համար։
12. Spot/Systemptible-ի համար ETL/ML վերամշակման համար։
13. Հեռացնել կրկնօրինակող ingest metric-ը։
14. Նվազեցնել անօգուտ ածխաջրածինների/պուլինգի հաճախությունը։
15. Ուղարկեք պրովայդերների վճարումները լավագույն «հակադարձման հանձնաժողովից»։
16. Անհատիզացնել բոնուսները (խաղացողի արժեքի կապ)։
17. Սառեցնել «low-ROI» գնման ալիքները։
18. Էֆեմերական թեստ-միջավայրը խնդրանքով։
19. Պարզ ռեսուրսների ինքնաբերությունը (VM/stends)։
20. Քաղաքականությունները «թանկ» ինստանսի և լոգարանների ծավալների վրա։
18) Անտիպատերնի
Խնայողությունները «փխրուն» առանց մետրիկի և SLO-ի հաստատեցին եկամուտների թաքնված կորուստները։
Լոգերից/հետքերով զանգվածային հրաժարվելը բացատրում է MTTR-ի վատացումը և հաճախորդների աճը։
Համընդհանուր կաթիլները առանց սեգմենտացման նվազում են վճարումների/բոնուսների փոխակերպումը։
Egress/CDN-ի անտեսումը «անտեսանելի» հաշիվները աճում են ավելի արագ, քան ընկերությունը։
19) Դերերը և պատասխանատվությունը (RACI)
Responsible: SRE/Platform, Data/FinOps, Billing/Payments, Risk.
Accountable: Head of Ops/CTO.
Consulted: Product, Marketing, Security/Compliance.
Informed: Support, Finance.
20) Վերահսկում և բարելավում
Ամեն շաբաթ խնայողությունները 'playbook, բլոկերներ, մետրեր։
Ամեն ամիս, $/միավորի վերանայումը, համեմատությունը բենչարկի հետ, լավագույն 10-ի փոխանակումը։
Եժեքվարտալ ՝ ռուսական գործընկերներ պրովայդերների, պահեստային դասարանների/ինստանսների հետ։
Արդյունքը
OPEX-ի օպտիմիզացումը ոչ թե տարբեր «հաշիվների մաքրում» է, այլ շարունակական համակարգ, ծախսերի թափանցիկությունը բացատրվում է ROI-ի տեխնոլոգիական տեխնոպտիմիզացիայի առաջնահերթությունը առանց SLO-ի վնասելու, որը բացատրում է ավտոմատացումը և governae։ Այս մոտեցման դեպքում դոլար/RPS և դոլար/գործարքը նվազում է կայուն, իսկ ներմուծման որակը և ածխաջրածինների արագությունը մեծանում են։