Егер сіз осы бетке тез байып кету схемасымен байыймын деп ойласаңыз, көңіліңізді қалдырғаным үшін кешіріңіз. Бұл мақалада бұлттық шығындарды 1 миллион долларға қалай азайтуға болатыны туралы көбірек айтылады. Мұны істеу арқылы сіз қосымша миллион доллар табысқа ие боласыз - оны сіз AWS арқылы қалай байыту туралы менің онлайн курсымды сатып алуға жұмсай аласыз ( курсқа сілтеме осында ).
Компания жобаларының басында бұлтты шығындар жиі ескерілмейді және есепке алынбайды. 2021 жылы HashiCorp сауалнамасы 2021 жылы компаниялардың 40% дерлік бұлтты шығындарға артық жұмсағанын көрсетті [ 1 ]. 2023 жылы барлық дерлік компаниялар (94%) бұлтқа ақша жұмсағанын мойындады [ 1 ] және бұлт құнының кем дегенде 30% босқа кетті [ 2 ]. Бұлтты шығындар 2022 жылы шамамен 500 миллиард долларды құрады - сондықтан біз жылына 150 миллиард долларды босқа жұмсап жатырмыз!
Бұл өткізіп алынған кірістер туралы ғана емес, сонымен қатар тұрақтылықты сақтау тәжірибесінің нашарлығы. 150 миллиард доллар босқа жұмсалған энергия!
Бұл нәтижелер үлкен бұлтты жетілуден төмен бұлтты жетілгенге дейінгі шағын кәсіпорындармен қатар ірі кәсіпорындарды қамтиды. Ол AWS-ке қатысты, бірақ сол принциптерді кез келген басқа бұлттық провайдерге де қолдануға болады. Сонымен, егер сіздің жұмысыңыздың кез келген бөлігі бұлтта болса, онда бұл мақала сізге арналған.
Мен деректер инженері тұрғысынан айтып отырмын, бірақ сол оқуды басқа бағдарламалық жасақтама жасау тәжірибесіне де қолдануға болады.
Сүңгіп алайық.
Бұлт шотының бұл түрі әдетте миллиондаған тұтынушылармен жаһандық деңгейде жұмыс істейтін өте ірі кәсіпорындармен шектеледі.
Сізге идея беру үшін 1 миллион долларлық бұлттық шот жылына 365 күн бойы 24x7 сағатына ~1,5 Тб Spark ETL жұмысын өңдеу нәтижесінде пайда болуы мүмкін. Тағы бір мысал, әлемнің бірнеше жерінен күніне миллиардтаған сұрауларды қабылдайтын қолданба болуы мүмкін.
Ірі кәсіпорында мұндай көлемдегі жүздеген қосымшалар бар, нәтижесінде бұлттық провайдерлермен миллиард долларлық келісімшарттар жасалады. Мысалы, Airbnb 2019 жылдың соңында бес жыл ішінде бұлтты ресурстарға 1,2 миллиард доллар жұмсауға міндеттеме алды [3 ].
Expedia-да біз оңтайландыру тәжірибесін енгізу арқылы жылына 1,1 миллион доллар тұратын деректерді өңдеудің ETL құнын жылына бар болғаны 100 000 долларға дейін қысқарттық. Бұл шығындарды 91% төмендету!
Барлық компанияларда мұндай үлкен көлемдегі қолданбалар бола бермейді, бірақ бұлт құнын тек бір қолданба немесе бүкіл компанияңыз үшін 90%-ға қысқартуды елестетіңіз.
Барыңыз және ең қымбат қолданбаларыңыздың тізімін алыңыз және дизайн болжамдарыңызға қарсы тұрыңыз .
Барлық осы сұрақтар ең маңызды сұраққа оралады: қолданба қалай пайдаланылады? Оның болуы үшін бизнестің мәні қандай? Қолданба бізге қойылған мақсатқа жетуге қалай көмектеседі?
Әрине, бұл жауаптардың барлығы жобаның басында өте жиі түсініксіз болады; бірақ сондықтан дизайн әрқашан қайталанатын процесс болуы керек - өзгерістер мүмкіндігінше кедергісіз орын алуына мүмкіндік береді. Инженерлер эволюция мен өзгерістерді қабылдауы керек, қолданбаларды әзірлеуді әсер етумен үйлестіру керек.
Екінші қадам қолданбаны дұрыс ресурстармен қамтамасыз ету және оны дұрыс инфрақұрылымға баптаудан тұрады.
Инженер ретінде бұлттық шығындар қалай есептелетінінен хабардар болыңыз. Мысалы, AWS кластер бағасына өтінім бере алатын спот даналарын қамтамасыз етеді — бұл қатеге төзімді және икемді қолданбаларыңыз болса, әсіресе пайдалы. Мүмкіндігінше оларды пайдаланыңыз — AWS шығындарды 90%-ға дейін төмендетеді [ 4 ].
Сіз қарастырғыңыз келетін кейбір басқа ойлар:
AWS Graviton даналарын пайдалануда кемшіліктер аз немесе жоқ. AWS ең үнемді процессорларды жасауға көп қаржы жұмсады. Intel негізіндегі процессордан ARM негізіндегі процессорға ауысу арқылы ғана бұлттық шығындарды 40%-ға дейін азайтуға болады [ 10 ].
Мұның жалғыз ескертуі - қолданбаңыз Graviton жұмыс істейтін ARM негізіндегі процессорлармен үйлесімді болуы керек. Егер сіз RDS немесе OpenSearch сияқты басқарылатын қызметпен айналысып жатсаңыз, онда ауысуда ешқандай қиындық болмайды — AWS негізгі ОЖ және қолданба үйлесімділігімен айналысады. Егер сіз өзіңіздің қолданбаңызды жасап жатсаңыз, қай тілге байланысты пакетті қайта құрастыру қажет болуы мүмкін — Java және басқа тілдер ешқандай өзгерісті қажет етпейді, ал Python біраз назар аударуды қажет етеді.
Соңында, күтпеген шыңдар мен тосын сыйлар үшін шығындарыңызды бақылауды ұмытпаңыз. Қолданбаңыздың 0-күніндегі баға 170-күндегі бағадан өзгеше болады. Өзгерістерді қадағалап отырғаныңызға және өзгерістің неліктен болып жатқанын түсінгеніңізге көз жеткізіңіз: бұл s3 сақтау құнын жинап жатыр ма, әлде бір реттік пе? шип?
Қажетті ескертулер мен нұсқаулықтарды орнатыңыз !
Маңыздысы, бөлім, жоба немесе орта бойынша шығындарды бақылау үшін шығындарды бөлу тегтерін енгізіңіз. Құны бақыланбайтын немесе әртүрлі журнал жүйелері бойынша ұзақ сапарды қажет ететін деректер батпағын жасау қаупінен аулақ болыңыз. Кез келген берілген қолданба құнына оралу жылдам және қарапайым болуы керек.
Қай жерде жұмыс істесеңіз де, жаңа мүмкіндіктерді жеткізу мен ағымдағыларды оңтайландыруды теңестіру қиын. Жарық жылдамдығымен жаңа қызықты мүмкіндіктерді жеткізу кімге қысым жасамады.
Дегенмен, инженерлер үшін де, менеджерлер үшін тәуекелдер мен мүмкіндіктерді тиімді басқара отырып, өздерінің ағымдағы жобалары туралы саналы және белсенді шешімдер қабылдау өте маңызды.