3. Kaj morate upoštevati pri načrtovanju gostovane storitve
Pri razvoju aplikacije, ki bo delovala v oblaku, morate upoštevati več dejavnikov, kot so zakasnitve, visoka razpoložljivost in razširljivost.
Pri vpeljavi gostovane storitve v okolje Windows Azure je pomembno vprašanje, katero lokacijo boste izbrali za namestitev svoje aplikacije. Običajno aplikacije namestite v podatkovne centre, ki so najbližje vašim strankam, s čimer zmanjšate zakasnitve in zagotovite najvišjo možno zmogljivost. Lahko se odločite tudi za podatkovni center, ki je bližje vašemu podjetju ali vašim podatkom, če vas skrbijo vprašanja pristojnosti in pravne zahteve glede shranjevanja podatkov. Po vsem svetu imate na voljo šest podatkovnih centrov, v katerih lahko gostujejo vaše aplikacije. V spodnji tabeli so prikazane lokacije, ki so vam na voljo:
|
Država/regija
|
Podregije
|
|
ZDA
|
Južna osrednja in severna osrednja
|
|
Evropa
|
Sever in zahod
|
|
Azija
|
Jugovzhod in vzhod
|
Tabela 1: Lokacija strežnikov Windows Azure
Ko nameščate gostovano storitev, izberite podregijo, ki ustreza lokaciji, na kateri želite izvajati svojo kodo.
Za zagotavljanje visoke razpoložljivosti in razširljivosti je ključnega pomena, da so podatki vaše aplikacije shranjeni na osrednji lokaciji, ki je dostopna virtualnim strežnikom z različnimi vlogami. V ta namen Windows Azure zagotavlja več možnosti za shranjevanje podatkov, kot so binarni objekti, tabele in SQL Azure. Za več informacij o teh tehnologijah za shranjevanje podatkov preberite članek Možnosti shranjevanja podatkov na platformi Windows Azure. Na spodnji sliki je prikazano, kako sistem za upravljanje delovnih obremenitev v podatkovnem centru Windows Azure posreduje zahteve odjemalcev na virtualne strežnike z različnimi vlogami, pri čemer vsi strežniki uporabljajo podatke z iste lokacije za shranjevanje.

Slika 4: Primer posredovanja zahtev odjemalcev na različne strežnike z različnimi vlogami pri čemer vsi strežniki uporabljajo podatke z iste lokacije za shranjevanje
Običajno aplikacijo in podatke vpeljete v isti podatkovni center, saj tako zagotovite manjše zakasnitve (hitrejše delovanje), ko aplikacija dostopa do podatkov. Poleg tega vam pri prenosu podatkov znotraj istega podatkovnega centra ni treba plačevati za porabljeno pasovno širino.
4. Kako razviti razširljive aplikacije
Včasih morda želite razviti eno samo aplikacijo (na primer, preprosto spletno stran) in z njo gostovati na platformi Windows Azure. Toda pogosto vašo aplikacijo sestavlja več vlog, ki se med seboj povezujejo. Na spodnji sliki je prikazan primer aplikacije, ki jo sestavljata dva virtualna strežnika v vlogi spletne strani, trije virtualni strežniki za obdelavo naročil in en virtualni strežnik v vlogi za pripravo poročil. Te vloge so med seboj povezane in programsko kodo za vse vloge je mogoče združiti in na platformo Windows Azure vpeljati kot eno samo enoto.

Slika 4: Primer aplikacije, ki jo sestavljata dva virtualna strežnika v vlogi spletne strani, trije virtualni strežniki za obdelavo naročil in en virtualni strežnik v vlogi za pripravo poročil
Glavni razlog za razdelitev aplikacije v različne vloge, ki se izvajajo na različnih virtualnih strežnikih, je možnost medsebojno neodvisne razširljivosti vlog. Na primer, med novoletnimi prazniki številne stranke pri vašem podjetju kupujejo darila, zaradi česar morda želite povečati število virtualnih strežnikov, na katerih gostujeta vlogi Spletna stran in Obdelava naročil. Ko se prazniki končajo, se poveča število vrnjenih izdelkov, zaradi česar potrebujete več virtualnih strežnikov s spletno stranjo in manj virtualnih strežnikov za obdelavo naročil. Med letom morda potrebujete le nekaj virtualnih strežnikov za spletno stran in obdelavo naročil. Obenem ves ta čas potrebujete le en virtualni strežnik v vlogi za pripravo poročil. Windows Azure nudi prilagodljivo vpeljavo aplikacij na podlagi vlog, kar vam omogoča, da aplikacijo preprosto prilagajate svojim poslovnim potrebam.
Običajno virtualni strežniki v različnih vlogah, ki sestavljajo vašo gostovano storitev, komunicirajo med seboj. Na primer, vloga spletne strani sprejme kupčevo naročilo, vendar obdelavo naročila prepusti virtualnim strežnikom za obdelavo naročil. Najboljši način za prenos delovnih obremenitev z enega nabora virtualnih strežnikov v eni vlogi na virtualne strežnike v drugi vlogi je uporaba tehnologije čakalne vrste, ki jo zagotavlja Windows Azure. Uporabite lahko storitev čakalne vrste Queue Service ali čakalne vrste storitvenega vodila Service Bus Queue. Uporaba čakalne vrste je ključen del naše zgodbe saj gostovani storitvi omogoča neodvisno povečevanje ali zmanjševanje zmogljivosti virtualnih strežnikov za posamezne vloge, kar pomeni, da lahko stroškovno učinkovito uskladite delovne obremenitve. Če se število sporočil v čakalni vrsti povečuje, lahko povečate število virtualnih strežnikov, ki izvajajo vlogo obdelave naročil. Če se število sporočil v čakalni vrsti zmanjša, lahko zmanjšate število virtualnih strežnikov, ki izvajajo vlogo obdelave naročil. Tako boste plačevali le za tiste virtualne strežnike, ki jih potrebujete za dejanske delovne obremenitve.
Čakalna vrsta prav tako zagotavlja zanesljivost storitve. Ko zmanjšate število virtualnih strežnikov za obdelavo naročil, platforma Windows Azure sama odloči, kateri virtualni strežniki bodo odstranjeni. Pri tem se lahko odloči, da odstrani strežnik, ki ravno obdeluje sporočilo v čakalni vrsti. Toda ker obdelava sporočila ni bila uspešno zaključena, sporočilo ponovno postane vidno drugemu virtualnemu strežniku za obdelavo naročil, ki ga prevzame in obdela. Zaradi vidnosti sporočil v čakalni vrsti ste lahko prepričani, da bodo sporočila sčasoma obdelana. Čakalna vrsta prav tako deluje kot sistem za razporejanje delovnih obremenitev, saj sporočila pošilja vsem virtualnim strežnikom, ki jih zahtevajo.
Tudi za virtualne strežnike v vlogi spletne strani lahko spremljate dohodni promet in se odločite, ali boste število virtualnih strežnikov povečali ali zmanjšali. Čakalna vrsta vam omogoča, da število virtualnih strežnikov, ki izvajajo vlogo spletne strani, povečate neodvisno od števila strežnikov za obdelavo naročil. S tem pri upravljanju storitve pridobite izjemno prilagodljivost. Če vašo aplikacijo sestavlja še več vlog, lahko vključite dodatne čakalne vrste za komunikacijo med njimi, pri čemer lahko prav tako izkoristite prednosti na področjih razširljivosti in stroškov.
5. Definicija in nastavitve gostovane storitve
Ob vpeljavi gostovane storitve v okolje Windows Azure morate pripraviti datoteki z definicijo in konfiguracijo storitve. Obe datoteki sta v formatu XML in vam omogočata, da z deklarativnimi ukazi določite možnosti za vpeljavo vaše gostovane storitve. Datoteka z definicijo storitve opisuje vse vloge, ki sestavljajo vašo gostovano storitev, in načine, kako komunicirajo med seboj. Datoteka za konfiguracijo storitve opisuje število virtualnih strežnikov za vsako vlogo posebej in nastavitve posameznih virtualnih strežnikov.