Azure mobile services (.NET Backend)

Miroslav Holec       9. 6. 2014       ASP.NET MVC, Windows Phone, Azure, .NET       5368 zobrazení

Mobilní služby na MS Azure nejsou žádnou novinkou. Do nedávné doby bylo možné zakládat standardní “Mobile Service”, která následně poskytovala tři cenné pilíře pro vývoj mobilních aplikací. Jednak aplikační rozhraní pracující s daty uloženými v relační databázi MS SQL (typicky), poskytovatele pro práci s identitami (MS account, FB, Twitter, Google) a v neposlední řadě bylo možné mobile services použít k odesílání push notifikací. Nově Azure nabízí vytvoření Mobile Service typu .NET backend.

Původní DATA + API

Původní řešení Mobile services zpřístupňovalo v rozhraní MS Azure dvě záložky: DATA a API. Princip původních služeb byl tedy takový, že jste si založili novou tabulku v sekci data. Tato tabulka neobsahovala nic než primární klíč typu bigint a pomocí různých cest bylo možné tuto tabulku rozšířit o další sloupce (například přes SQL Management Studio). S daty v takové tabulce se následně dalo manipulovat pomocí různých API. Tato API byla definována node js scriptem, který obsluhoval všechny potřebné metody (post, put, get…). Klient pak s aplikačním rozhraním komunikoval pohodlně pomocí SDK, resp. bylo možné pracovat přímo s daty. Celé toto řešení mělo ale z mého pohledu celou řadu nevýhod (což mě také nutí psát o data+api v minulém čase):

  • byť úprava js je možná i ve VS přes server explorer, skripty byly přímo v rozhraní MS Azure = nemožnost týmové práce, kooperace, verzování
  • node js znamenal pro .NET vývojáře “technologickou vrstvu” navíc
  • node js není všemocný a API je použitelné jen pro triviální aplikace (většinou CRUD nad vlastními daty)

V konečném důsledku se tak celé řešení hodilo jen pro vývoj menších aplikací, které operovali pouze s vlastními daty bez potřeby provádět nějakou logiku.

DOT NET BACKEND

Novinka .NET Backend ve své podstatě funguje tak, že vytvoříte plnohodnotnou webovou službu. V hantýrce šablon Visual Studia se jedná o Windows Azure Mobile Service template, která je dostupná ve VS 2013 Update 2. Šablona automaticky založí projekt typu Web API (podobný MVC aplikaci) s určitými atypickými rysy pro standardní webové aplikace. Takto založený projekt má celou řadu výhod:

  • je autonomní, můžete ho provozovat kdekoliv mimo MS Azure (nebo to může být např.: MS Azure Cloud Service)
  • může využívat jakékoliv datové zdroje, relační databáze, přístupy k datům
  • je to ASP.NET aplikace (rozšiřitelnost, testovatelnost, atd..)
  • standardní výhody běžných projektů (týmová práce)

Hotová služba se publikuje běžným způsobem přímo z Visual Studia. Po volbě subscription se nabídne v záložce Windows Azure Mobile Services seznam všech služeb, které jsou typu .NET Backend (případně je možné vytvořit novou). Po publikaci do MS Azure je služba dostupná na vybrané url adrese http://{something}.azure-mobile.net a není problém službu dále škálovat.

I v případě .NET Backend jsou dostupné 3 varianty plánu:

  • free (zdarma) – zahrnuje 10 mobilních služeb a 20 MB databázi MS SQL, omezení na 0,5 mil. volání API (per všech 10 služeb)
  • basic (25 USD) – 1,5 mil. volání API
  • standard (199 USD) – 15 mil. volání API

V případě basic/standard plánů se platí za tzv. jednotky (units). Pokud například bude služba vytížena cca 6 miliony volání API, je ideální disponovat se 4 basic jednotkami (100 USD) spíše než s jednou standard jednotkou, která by byla nevyužitá a stála by 199 USD.

Závěr

Zásadní výhodou Mobile Services typu .NET Backend je samotný princip, kterým je psaní plnohodnotné služby formou Web API (MVC projektu). To, co vlastně MS Azure nově nabízí je možnost deploye takového projektu do samostatně škálovatelné “služby”. U této služby mě nezajímá nic jiného než traffic v podobě počtu volání. Geniální je, že pokud se nedotknu hranice 0,5 mil, mohu celou tuto službu používat zdarma.

Zdroje:

 

hodnocení článku

0       Hodnotit mohou jen registrované uživatelé.

 

Nový příspěvek

 

Příspěvky zaslané pod tento článek se neobjeví hned, ale až po schválení administrátorem.

                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.

Nyní zakládáte pod článkem nové diskusní vlákno.
Pokud chcete reagovat na jiný příspěvek, klikněte na tlačítko "Odpovědět" u některého diskusního příspěvku.

Nyní odpovídáte na příspěvek pod článkem. Nebo chcete raději založit nové vlákno?

 

  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

Příspěvky zaslané pod tento článek se neobjeví hned, ale až po schválení administrátorem.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:  
Heslo:  

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback