Ինչպես նվազեցնել ձեր հավելվածի հոսթինգի ծախսերը
Հոսթինգի ծախսերը նվազեցնելու համար պարզեք, թե իրականում ինչ է աշխատում և ինչու, հետո թողեք ամեն ինչ քնել, երբ ոչ ոք չի օգտագործում։ Այն հոսթերում, որոնք իջնում են մինչև զրո, անգործուն հավելվածը և քնած տվյալների բազան շատ քիչ են արժենում, ուստի ամենամեծ խնայողությունը սովորաբար գալիս է նրանից, որ հեռացնում եք այն, ինչ արթուն է պահում դրանք, հաճախ՝ այն կոդը, որ տվյալների բազան ստուգում է յուրաքանչյուր մի քանի վայրկյանը մեկ, իսկ հետո՝ թրաֆիկի կրճատումից և այն հավելվածների ջնջումից, որոնք ոչ ոք չի օգտագործում։
Փոքր հավելվածների մեծ մասի խնդիրը թրաֆիկը չէ։ Խնդիրն այն է, որ «ինչ-որ բան միշտ միացված է»։ Այս ուղեցույցը ցույց է տալիս, թե ինչպես գտնել և շտկել դա՝ AI հավելվածների կառուցողին տալու համար պատրաստի հրահանգներով։
Ինչի համար եք իրականում վճարում
Փոքր հավելվածների հոսթինգի հաշիվը գալիս է մի քանի բանից։ Իմանալը, թե որ մասն է մեծ, ցույց է տալիս, թե որտեղ նայել։
| Ծախս | Ինչն է մեծացնում այն | Սովորական շտկում |
|---|---|---|
| Հաշվարկում (սերվերը) | Մեքենայի չափը և օրական քանի ժամ է աշխատում | Թողնել, որ քնի. ճշտել չափը |
| Տվյալների բազա | Դրա չափը և որքան ժամանակ է արթուն | Դադարեցնել անընդհատ հարցումները, որ այն քնի |
| Թրաֆիկ | Որքան տվյալ են ներբեռնում այցելուները | Սեղմել պատկերները, քեշավորել ֆայլերը |
| Պահեստ | Ֆայլեր և տվյալներ, որ պահում եք | Ջնջել հին վերբեռնումները, գրանցամատյանները և պահուստները, որոնք պետք չեն |
| Երրորդ կողմի API-ներ | Կանչեր AI մոդելներին, քարտեզներին, էլ. նամակին, SMS-ին | Քեշավորել արդյունքները, դնել սահմանաչափեր |
Շատ ժամանակակից հոսթեր, ներառյալ Mythex-ը, իջնում են մինչև զրո. երբ ոչ ոք չի օգտագործում հավելվածը, սերվերը կանգ է առնում և հաշվարկման համար ոչինչ չի արժենում, ապա արթնանում է հաջորդ այցի ժամանակ։ Սա փոխում է հարցը. «որքան մեծ է իմ սերվերը» հարցից դառնում է «ինչու է իմ սերվերը արթուն»։
Քայլ 1. Նայեք, թե փողը որտեղ է գնում
Ունենալով որևէ փոփոխություն կատարելուց առաջ բացեք ձեր հոսթի օգտագործման էջը և գտեք.
- Ո՞ր նախագիծն է ամենաշատը արժենում. հաճախ մեկ հավելվածն է հաշվի մեծ մասը։
- Ո՞ր կատեգորիան՝ հաշվարկում, տվյալների բազա, թրաֆիկ կամ պահեստ։
- Ե՞րբ է ծախսում. հարթ գիծը գիշերը, երբ օգտատերեր չունեք, ցույց է տալիս, որ ինչ-որ բան հավելվածը արթուն է պահում։
Mythex-ում Օգտագործման մանրամասները ցույց են տալիս վերջին 30 օրը, բաժանված Build (AI agent-ը) և Run (հոսթինգ, թրաֆիկ, տվյալների բազա և ֆայլերի պահեստ) բաժինների, նախագծերով բաշխված։
Քայլ 2. Թողեք անգործուն հավելվածներին և տվյալների բազաներին քնել
Այս է իրական լծակը փոքր հավելվածների մեծ մասի համար։ Տվյալների բազան, որ քնում է անգործության ժամանակ և արթնանում հաջորդ հարցումից, գրեթե ոչինչ չի արժենում հանգիստ ժամերին։ Տվյալների բազան, որին մեկ-երկու վայրկյանը մեկ հարցում են արվում, երբեք անգործուն չի լինում, ուստի դրա համար վճարում եք ամբողջ օրը։
Mythex-ի հոսթինգի սահմանաչափերը բացատրում են, թե ինչպես է սա աշխատում հրապարակված հավելվածների համար. քնած հավելվածը հաշվարկման համար ոչինչ չի ծախսում, իսկ տվյալների բազան սկսում է իր ամենափոքր չափից, մեծանում է, երբ զբաղված է, քնում է 5 անգործուն րոպեից հետո և վճարվում է իր չափի և արթուն եղած ժամանակի արտադրյալի համար։ Այսպիսով, հավելվածը, որ իր տվյալների բազային հարցում է անում նույնիսկ մեկ անգամ մի քանի րոպեն մեկ, օր ու գիշեր, վճարվում է այնպես, կարծես միշտ զբաղված լիներ, մինչդեռ նույն հավելվածը առանց ֆոնային աղմուկի շատ քիչ է արժենում։
Մի քանի բան, որ հավելվածը արթուն է պահում.
- Հարցումներ (polling). էջ, որ սերվերին հարցնում է «նո՞ր բան կա» յուրաքանչյուր 2–5 վայրկյանը մեկ։ Եթե այդ ներդիրը մեկ laptop-ի վրա բաց թողնեք, տվյալների բազան երբեք չի քնի։
- Ինքնաթարմացվող վահանակներ, որոնք տվյալները վերաբեռնում են ժամանակաչափով, նույնիսկ երբ ոչ ոք չի նայում։
- Uptime մոնիթորներ, որ հավելվածին պինգ են անում ամեն րոպե։
- Ֆոնային ցիկլեր սերվերի կոդում.
setInterval, որ անվերջ մաքրում կամ համաժամեցնում է տվյալները։ - Պլանավորված «keep-alive» հարցումներ, որ ինչ-որ մեկը ավելացրել է դանդաղ առաջին այցից խուսափելու համար. դրանք աշխատում են՝ կանխելով քնելը, ինչն էլ հենց արժե փողը։
Խնդրեք AI-ին գտնել դրանք.
Նայիր կոդը և գտիր ամեն ինչ, որ աշխատում է ժամանակաչափով կամ կրկնվող կերպով հարցում է անում տվյալների բազային. հարցումներ, setInterval, ինքնաթարմացում, ֆոնային ցիկլեր։ Թվիր յուրաքանչյուրը, ինչքան հաճախ է աշխատում և աշխատում է արդյոք, երբ ոչ ոք էջը բաց չունի։ Առայժմ ոչինչ մի փոխիր։
Հետո շտկեք դրանք մեկ առ մեկ.
Վահանակը /api/orders-ը հարցնում է յուրաքանչյուր 3 վայրկյանը մեկ։ Փոխիր այնպես, որ թարմացնի միայն այն ժամանակ, երբ բրաուզերի ներդիրը տեսանելի է, և յուրաքանչյուր 60 վայրկյանը մեկ՝ 3-ի փոխարեն։ Ավելացրու ձեռքով Refresh կոճակ։
Եթե ձեր հավելվածին իրապես պետք են կենդանի թարմացումներ (զրույց, կենդանի արդյունքների աղյուսակ), հարցրեք, կարո՞ղ է այն մղել թարմացումները միայն երբ ինչ-որ բան փոխվում է, այլ ոչ թե անընդհատ հարցնել։ Շատ հավելվածների համար բավական է «թարմացնել, երբ օգտատերը վերադառնում է ներդիրին»։
Քայլ 3. Ճշտեք սերվերի չափը
Ավելի մեծ մեքենաները ավելի շատ են արժենում ժամում։ Շատ AI-ով կառուցված հավելվածներ սկսում են լռելյայն չափով, որը բավարար է. խնդիրները առաջանում են, երբ «ավելի հզորություն» են խնդրում դանդաղության համար, որը իրականում դանդաղ հարցման հետևանք էր։
- Պահեք ամենափոքր չափը, որ սպասարկում է ձեր թրաֆիկը առանց սխալների։
- Եթե տեսնում եք հիշողության խափանումներ, նախ հարցրեք AI-ին, արդյոք հավելվածը հիշողության մեջ չի բեռնում չափազանց շատ բան (ամբողջ աղյուսակ՝ արդյունքների մեկ էջի փոխարեն)։
- Ավելացրեք մեքենաներ միայն այն դեպքում, երբ ունեք չափված թրաֆիկ, որին դրանք պետք են։
Mythex-ում մեքենայի չափը ընտրվում է հրապարակման ժամանակ՝ ըստ հավելվածի կարիքների, իսկ լրացուցիչ մեքենաները միանում են միայն, երբ թրաֆիկը մեծ է, և նորից քնում են, երբ այն իջնում է։ Ծախսը հետևում է չափին, ուստի եթե կարծում եք, որ այն չափազանցված է, չաթում խնդրեք ավելի փոքր չափ։
Քայլ 4. Կրճատեք թրաֆիկը
Թրաֆիկը այն է, ինչ այցելուները ներբեռնում են։ Պատկերները սովորաբար ամենամեծ մասն են։
- Սեղմեք պատկերները և սպասարկեք ժամանակակից ձևաչափեր, ինչպիսիք են WebP-ը կամ AVIF-ը։
- Փոխեք պատկերների չափը՝ ըստ այն չափի, որով ցուցադրվում են։ 4,000 պիքսել լայնությամբ լուսանկարը, որ ցուցադրվում է 400 պիքսելանոց մանրապատկերով, ներբեռնածի մեծ մասը իզուր է։
- Ներքևում գտնվող պատկերները բեռնեք lazy եղանակով։
- Քեշավորեք ստատիկ ֆայլերը (սկրիպտներ, ոճեր, պատկերներ), որ վերադարձող այցելուները դրանք նորից չներբեռնեն։ Տես ինչ է քեշավորումը։
- Մի թույլ տվեք, որ հավելվածը մեծ ֆայլեր տա յուրաքանչյուր էջի դիտման ժամանակ։
Ստուգիր հավելվածի յուրաքանչյուր պատկեր։ Փոխիր դրանց չափը՝ ըստ ամենամեծ չափի, որով ցուցադրվում են, վերածիր WebP-ի և lazy բեռնիր այն ամենը, ինչ առաջին էկրանից ներքև է։ Ասա ինձ ընդհանուր չափը նախքան և հետո։
Ավելի արագ էջերը և ավելի քիչ թրաֆիկը սովորաբար միասին են գնում. տես ինչպես ավելի արագ դարձնել ձեր կայքը։
Քայլ 5. Մաքրեք այն, ինչ ոչ ոք չի օգտագործում
- Անջատեք հին հավելվածները. թեստային տեղակայումներ, ավարտված փորձեր, անցյալ տարվա իրադարձության կայք։
- Ջնջեք հին վերբեռնումները, գրանցամատյանները և արտահանումները, որոնք պետք չեն։
- Ջնջեք կիսված նախադիտման հղումները, որոնք այլևս չեք օգտագործում։ Mythex-ում նախադիտման հղումը բացելը արթնացնում է նախագիծը և աշխատում է ձեր կրեդիտներով, ուստի մոռացված հղում, որ ինչ-որ մեկը շարունակ է բացում, դեռ արժե։
- Հեռացրեք չօգտագործվող ծառայությունները. API սերվեր կամ worker, որին հավելվածն այլևս չի կանչում։
Քայլ 6. Դիտարկեք ստատիկ կայքը
Եթե ձեր կայքում մուտքեր չկան, պահված օգտատիրական տվյալներ չկան և սերվերային տրամաբանություն չկա՝ շուկայավարման կայք, պորտֆոլիո, ճաշացանկ, — այն կարող է լինել ստատիկ կայք. պարզ ֆայլեր, որ սպասարկվում են CDN-ից։ Չկա սերվեր կամ տվյալների բազա, որ պետք է աշխատի։ Mythex-ում ստատիկ կայքերը կրեդիտներ չեն օգտագործում, երբ պարզապես գոյություն ունեն։
Այս կայքը չունի մուտքեր կամ պահված տվյալներ։ Կարո՞ղ է այն վերակառուցվել որպես ստատիկ կայք՝ առանց սերվերի։ Ի՞նչ կկորցնենք։
Քայլ 7. Հետևեք վճարովի API կանչերին
Այն հավելվածների համար, որոնք կանչում են AI մոդելներ, քարտեզներ կամ SMS, երրորդ կողմի հաշիվները կարող են հոսթինգից շատ ավելի մեծ լինել։
- Պահանջեք մուտք այն ամենի համար, որ յուրաքանչյուր կանչի համար գումար է արժենում։
- Ավելացրեք օգտատիրոջ սահմանաչափ (տես ինչ է rate limiting-ը)։
- Քեշավորեք պատասխանները, որոնք չեն փոխվում, օրինակ՝ նույն հասցեի գեոկոդավորումը։
- Դրեք ծախսերի սահմանափակումներ կամ ծանուցումներ յուրաքանչյուր մատակարարի մոտ։
Տարածված սխալներ
- Չափելու փոխարեն կռահելը. նախ ստուգեք օգտագործման բաժանումը. թանկ մասը հաճախ այն չէ, ինչ կսպասեիք։
- Ավելի մեծ սերվեր գնելը դանդաղությունը շտկելու համար. բացակայող տվյալների բազայի ինդեքսը կամ չափազանց շատ տվյալների բեռնումը սովորաբար իրական պատճառն է։
- Ամեն ինչի հարցումը. յուրաքանչյուր մի քանի վայրկյանը մեկ ժամանակաչափը պատճառ է, որ տվյալների բազան մնա արթուն։
- Հավելվածին պինգ անելը, որպեսզի «տաք» մնա. դա վերացնում է այն խնայողությունը, որ տալիս է զրոյի իջնելը։ Ընդունեք կարճ արթնացում առաջին այցի ժամանակ կամ միտումնավոր վճարեք անընդհատ աշխատելու համար։
- Հին տեղակայումները մոռանալը. չօգտագործվող հավելվածները տվյալների բազաներով և ֆոնային աշխատանքներով աննկատ կուտակվում են։
- Չսեղմված պատկերներ. հաճախ փոքր կայքերի ամենամեծ թրաֆիկային ծախսը։
Ստուգաթերթ
- Ես գիտեմ, թե որ նախագիծն ու որ կատեգորիան (հաշվարկում, տվյալների բազա, թրաֆիկ, պահեստ) է ամենաշատը արժենում։
- Ոչինչ չի հարցնում տվյալների բազան յուրաքանչյուր մի քանի վայրկյանը մեկ, երբ ոչ ոք չի նայում։
- Վահանակները թարմանում են խելամիտ ընդմիջումով կամ միայն երբ ներդիրը տեսանելի է։
- Ոչ մի uptime մոնիթոր կամ ֆոնային ցիկլ չի արթուն պահում հավելվածը առանց պատճառի։
- Սերվերը ամենափոքր չափն է, որ աշխատում է։
- Պատկերները չափված, սեղմված և lazy բեռնված են. ստատիկ ֆայլերը քեշավորված են։
- Հին հավելվածներն անջատված են, հին ֆայլերը ջնջված, չօգտագործվող նախադիտման հղումները հեռացված։
- Առանց տվյալների կամ մուտքերի կայքերը ստատիկ են։
- Վճարովի API-ները ունեն մուտք, օգտատիրոջ սահմանաչափեր և մատակարարի ծախսերի ծանուցումներ։
Ծախսերի կրճատումը Mythex-ում
Mythex-ը օգտագործում է մեկ կրեդիտների հաշիվ՝ կառուցման և հոսթինգի համար, ուստի հոսթինգի խնայողությունը ավելի շատ կրեդիտ է թողնում կառուցման համար։ Մի քանի Mythex-ին հատուկ կետ.
- Հրապարակված հավելվածներն ու դրանց տվյալների բազաները քնում են, երբ անգործուն են, և արթնանում հաջորդ այցի ժամանակ։ Տվյալների բազան քնում է 5 անգործուն րոպեից հետո, ուստի անընդհատ հարցումների հեռացումը սովորաբար ամենամեծ շահն է։
- Pro պլանը հոսթինգի, տվյալների բազաների, թրաֆիկի, ֆայլերի պահեստի և նախադիտման sandbox-ի համար վճարում է Free դրույքաչափի կեսը. AI-ն երկու պլանի վրա նույն արժեքն ունի։ Տես Կրեդիտներ։
- Ցածր մնացորդի դեպքում, նախքան այն կկանգնեցնի հրապարակված հավելվածը, ստանում եք նամակ, իսկ կանգնեցված հավելվածները պահում են իրենց տվյալների բազան ու ֆայլերը։
Ավելի լայն պատկերի համար գործարկման ծախսերի մասին տես որքան է արժեն հավելված կառուցելը և ինչ է վեբ հոսթինգը։
Հարցեր
Ինչու է հոսթինգի հաշիվս բարձր, երբ հավելվածիս օգտատերերը քիչ են։
Սովորաբար ինչ-որ բան այն արթուն է պահում։ Կոդ, որը տվյալների բազան ստուգում է յուրաքանչյուր մի քանի վայրկյանը մեկ, uptime մոնիթորինգ, որը ամեն րոպե պինգ է անում, կամ մոռացված ֆոնային ցիկլ կարող են սերվերը և տվյալների բազան աշխատեցնել շուրջօրյա, նույնիսկ առանց այցելուների։
Արժե՞ արդյոք քնած հավելվածը գումար։
Հոսթերում, որոնք իջնում են մինչև զրո, քնած հավելվածը գրեթե ոչինչ չի ծախսում հաշվարկման համար. սովորաբար դեռ վճարում եք պահված տվյալների համար։ Mythex-ում հրապարակված քնած հավելվածը հաշվարկման համար ոչինչ չի ծախսում, իսկ նրա տվյալների բազան քնում է 5 անգործուն րոպեից հետո և վճարվում է միայն արթուն եղած ժամանակի համար։
Արդյո՞ք հարցումները վատ են հոսթինգի ծախսերի համար։
Յուրաքանչյուր մի քանի վայրկյանը մեկ հարցումը նշանակում է, որ տվյալների բազան երբեք անգործուն ժամանակ չունի, ուստի չի կարող քնել։ Հարցրեք ավելի քիչ հաճախ, միայն երբ մեկը նայում է էջին, կամ թարմացումները մղեք՝ այլ ոչ թե հարցնեք։
Արդյո՞ք ստատիկ կայքը հոսթել ավելի էժան է, քան վեբ հավելվածը։
Սովորաբար՝ այո։ Ստատիկ կայքը պարզապես ֆայլեր են, որոնք սպասարկվում են CDN-ից, առանց սերվերի կամ տվյալների բազայի, որ պետք է աշխատեն։ Եթե ձեր կայքում մուտքեր կամ պահված տվյալներ չկան, դրա ստատիկ կառուցումը խնայողության ամենամեծ աղբյուրներից մեկն է։