Programování

Jak maximálně využít bezplatnou vrstvu Google Cloud

Průmysl cloud computingu rád rozdává vzorky zdarma a Google se v tomto ohledu neliší od Amazonu nebo Microsoftu. Společnosti vědí, že pokud dáte zákazníkům chuť zdarma, vrátí se, až přijde čas na jídlo.

Google nabízí dva typy bezplatných. Noví zákazníci získají 300 $ na útratu za jakýkoli stroj nebo služby rozložené mezi 24 „cloudových regionů“, „73“ zón a 144 „síťových okrajových lokalit“. Peníze fungují téměř všude v cloudu Google, od surového výpočetního výkonu až po některý z několika desítek různých produktů, jako jsou databáze nebo mapové služby.

Ale i když tyto volné peníze dojdou, dary zdarma pokračují. Existuje 24 různých produktů, které nabízejí nepřetržité bezplatné vzorky, které jsou účtovány jako „vždy zdarma“. I když jste zákazníkem už léta, stále můžete experimentovat. Google samozřejmě přidává upozornění, že slovo „vždy“ v tomto velkorysém příslibu „podléhá změnám“. Ale dokud ten den nepřijde, databáze BigQuery bude každý měsíc odpovídat na jeden terabajt dotazů a AutoML Translation promění 500 000 znaků z jednoho jazyka do druhého.

Někteří vývojáři využívají bezplatnou vrstvu k tomu, čím má být: příležitost prozkoumat, aniž by prosili svého šéfa a šéfa šéfa o rozpočet. Jiní pracují na bočním shonu nebo na webových stránkách pro děti ze sousedství. Když je zátěž malá, je snadné inovovat, aniž byste museli platit měsíční účet.

Někteří vývojáři to dělají extrémně. Snaží se zůstat ve volné vrstvě co nejdéle. Možná je to proto, že se chtějí chlubit šíleně nízkou rychlostí hoření. Možná je to jen forma moderního machismu. Možná mají málo peněz.

V každém případě však práce s tímto volným úhlem tak dlouho, jak je to možné, obecně vede k štíhlým a efektivním webovým aplikacím, které dělají co nejvíce s co nejmenším množstvím. Až přijde den, kdy opustí volnou vrstvu, zůstanou měsíční účty malé, jak se projekt zvětší, což zahřeje srdce každého finančního ředitele.

Zde je několik tajemství, jak vyždímat každou poslední kapku dobroty z bezplatné nabídky Google. Možná jste levní. Možná jen čekáte, až to řeknete svému šéfovi, dokud se úžasnost úplně neuvědomí. Možná se jen bavíte a toto je pitomost. V každém případě existuje mnoho způsobů, jak ušetřit.

Ukládejte pouze to, co je nutné

Bezplatné databáze, jako je Firestore a Cloud Storage, jsou zcela flexibilní nástroje, které odstraňují dokumenty a objekty klíč-hodnota. Úroveň služby Google Cloud, která je vždy zdarma, vám umožní uložit prvních 1 GB a 10 GB do každého produktu. Čím více podrobností však vaše aplikace uchová, tím rychleji se volné gigabajty vyčerpají. Ukončete ukládání informací, pokud je bezpodmínečně nepotřebujete. To znamená žádné obsedantní shromažďování dat pouze pro případ, že je budete potřebovat pro pozdější ladění. Žádná další časová razítka, žádná velká mezipaměť plná dat, která si necháváte, abyste byli připraveni.

Komprese je váš přítel

Existují desítky dobrých částí kódu pro přidání vrstvy komprese ke klientům. Místo ukládání tukových bloků JSON může klientský kód spustit data pomocí algoritmu, jako je LZW nebo Gzip, před odesláním přes drát do instancí serveru, které je uloží bez rozbalení. To znamená rychlejší reakce, méně problémů se šířkou pásma a menší dopad na vaši bezplatnou měsíční kvótu úložiště dat. Buďte trochu opatrní, protože některé velmi malé datové pakety se mohou zvětšit, když je zahrnuta režie z komprese.

Přejít na server

Google je štědřejší se svými přerušovanými výpočetními službami, které jsou účtovány na žádost. Cloud Run se spustí a spustí bezstavový kontejner, který každý měsíc zdarma zodpoví dva miliony požadavků. Cloudové funkce spustí vaši funkci v reakci na další dva miliony požadavků. To je v průměru více než 100 000 různých operací každý den. Ukončete čekání a začněte psát kód do modelu bez serveru.

Poznámka: Někteří architekti se budou krčit nad myšlenkou využívat dvě zcela odlišné služby. Může to ušetřit peníze, ale zdvojnásobí to složitost aplikace, což znamená, že bude obtížnější ji udržovat. To je skutečné nebezpečí, ale často můžete více či méně duplikovat strukturu funkcí jako služba Cloud Functions ve vašem vlastním kontejneru, což vám umožní konsolidovat váš kód později, pokud to plánujete.

Použijte App Engine

Google App Engine zůstává jedním z nejlepších způsobů, jak roztočit webovou aplikaci, aniž byste si museli dělat starosti se všemi podrobnostmi, jak ji nasadit nebo škálovat. Téměř vše je automatizované, takže v případě nárůstu zatížení nasadí nové instance. App Engine je dodáván s 28 „instančními hodinami“ pro každý den - to znamená, že vaše základní aplikace poběží zdarma po dobu 24 hodin denně a v případě prudkého nárůstu poptávky se může dokonce zvýšit na čtyři hodiny.

Konsolidujte servisní volání

Pokud jste opatrní, můžete přidat doplňky. Limity pro volání bez serveru jsou v počtu jednotlivých požadavků, nikoli ve složitosti. Sbalením všech datových operací do jednoho většího paketu můžete do každé výměny zabalit více akcí a více výsledků. Můžete tedy nabídnout hloupé triky, jako jsou ceny akcií, ale pouze v případě, že vložíte pár dalších bajtů do naprosto nezbytných balíčků. Mějte na paměti, že Google počítá použitou paměť a výpočetní čas. Vaše funkce nesmí překročit 400 000 GB sekund paměti a 200 000 GHz sekund výpočetního času.

Použijte místní úložiště

Moderní webové rozhraní API nabízí řadu dobrých míst pro ukládání informací. K dispozici je dokonale dobrý staromódní soubor cookie, který je omezen na čtyři kilobajty. Rozhraní Web Storage API je dokumentový systém klíč – hodnota, který bude ukládat do mezipaměti nejméně pět megabajtů dat a některé prohlížeče si ponechají 10 megabajtů. IndexedDB nabízí bohatší sadu funkcí, jako jsou databázové kurzory a indexy, které urychlí orání dat, která jsou často ukládána bez omezení.

Čím více dat lokálně uložíte na počítači uživatele, tím méně budete potřebovat k využití svého vzácného úložiště na straně serveru. To může také znamenat rychlejší reakce a mnohem menší šířku pásma věnovanou přenášení nekonečných kopií dat zpět na váš server. Problémy však nastanou, když uživatelé přepnou zařízení, protože data pravděpodobně nebudou synchronizována. Jen se ujistěte, že důležité podrobnosti jsou konzistentní.

Najděte skryté nabídky

Google udržuje užitečnou stránku, která shrnuje všechny produkty „vždy zdarma“, ale pokud budete procházet kolem, najdete spoustu bezplatných služeb, které se do seznamu ani nedostanou. Například Mapy Google nabízejí „200 $ využití měsíčně zdarma“. Dokumenty Google a několik dalších rozhraní API jsou vždy zdarma.

Použijte G Suite

Mnoho produktů G Suite, včetně dokumentů, tabulek a disků, je účtováno zvlášť a uživatelé je buď dostanou zdarma pomocí svého účtu GMail, nebo je jejich firma platí jako sadu. Místo vytváření aplikace s integrovaným vytvářením přehledů jednoduše zapište data do tabulky a sdílejte je. Tabulky jsou dostatečně silné, aby zahrnovaly grafy a grafy jako jakýkoli řídicí panel. Pokud vytvoříte webovou aplikaci, budete muset spálit výpočetní a datové kvóty, abyste mohli zpracovat interaktivní požadavky. Pokud však pro svou sestavu vytvoříte pouze dokument Google, většinu práce ukládáte do zařízení Google.

Odstraňte triky

Některé funkce moderních webových aplikací jsou nadbytečné. Vyžaduje vaše bankovní aplikace nabídky akcií? Potřebujete uvést místní čas nebo teplotu? Potřebujete vložit nejnovější tweety nebo fotografie z Instagramu? Ne. Zbavte se všech těchto doplňků, protože každý z nich znamená další volání na vaše serverové stroje, a to se zbavuje vašich bezplatných limitů. Tým produktového designu může snít ve velkém, ale můžete mu říct: „Ne!“

S novými možnostmi buďte opatrní

Některé z chladnějších nástrojů pro vytváření služeb umělé inteligence pro váš zásobník nabízejí dobré limity pro experimentování. Služba AutoML Video vám umožní trénovat váš model strojového učení na video kanálech po dobu 40 hodin každý měsíc, než se začnou účtovat poplatky. Služba pro tabulková data rozdrtí vaše řádky a řádky informací na uzlu zdarma po dobu šesti hodin. To vám dává dostatek provazu k experimentování nebo stavění základních modelů, ale pozor. Bylo by nebezpečné automatizovat proces, aby každý uživatel mohl spustit velkou úlohu strojového učení.

Udržujte náklady v perspektivě

Je snadné dostat tuto hru do extrému a přeměnit architekturu vaší aplikace na zařízení Rube Goldberg, abyste ušetřili trochu více peněz. Je důležité si uvědomit, že skok z bezplatné úrovně na platícího zákazníka je v Google Cloud často docela malým krokem. I když na internetu existuje mnoho bezplatných služeb, které mohou jedním kliknutím přeskočit z bezplatných na tisíce dolarů, služby Google obecně nemají takovou cenu.

Po přechodu na dva miliony bezplatných vyvolání cloudových funkcí je další neuvěřitelných 0,0000004 $. To je jen 40 centů na milion. Pokud budete kopat v zásuvce ponožek, měli byste být schopni pokrýt několik milionů navíc s malými potížemi.

Cenový plán je dostatečně velkorysý, takže při vystoupení ze svobodného pásma nebudete mít infarkt. Pokud vaše aplikace potřebuje pár miliónů toho či onoho, pravděpodobně ji budete moci pokrýt. Důležitou lekcí je, že udržení nízké výpočetní zátěže se promítne do menších účtů a rychlejších odpovědí.