Yazdır

Windows Azure Mobile Services – Mobil Servise Giriş

Selam arkadaşlar,

Daha önceki yazılarımda Windows Azure üzerinde nasıl hesap yaratırız kısmını görmüş ve yine Azure üzerinde bir Web Sitesi yayınlayarak bir giriş yapmıştık. Şimdi işin biraz mobil tarafına kayalım ve bu kısımda neler var neleri uygulamalarımızda kullanabiliriz ne tür problemleri çözeriz bunları görelim.

 

Şu an bir mobil uygulama geliştirmeye karar verdiğinizi varsayalım. Platformdan bağımsız olarak Windows Phone, Windows Store, IOS, Android ve REST API sayesinde tüm hizmetleri kapsayan, kısaca telefon tablet ve Windows 8 yüklü cihazlarda çalıştırabileceğiniz bir mobil uygulama olacağını düşünelim. Uygulamayı geliştirmeye başladığınızda zamanla ihtiyacınız olacak şey bir sunucu tabanlı veri saklamak için bir alana, veritabanıyla haberleşmek için bir sisteme ve belki de uygulamanızda authentication sağlamak için bir kontrole sahip olmak isteyeceksiniz. Derken bir baktınız iş çığırından çıkmış ve siz mobil uygulama geliştirmekten çok back-end tarafında kaybolmuşsunuz.

İşte Azure Mobile Servisler burada devreye giriyor. Yaptığı şey,  arka planda bizim için tüm bu işleri halledecek, ölçeklenebilir, güvenilir ve en önemlisi kullandığımız kadar ödeyeceğimiz bir sistemi bize sunması. Bu sayede biz yalnızca uygulama geliştirmeye odaklanabilirken, Azure’da yapacağımız birkaç ayar ile uygulamanın back-end tarafı güvende olacak.

Yukarıda Windows Azure Training Kit içerisinden bulduğum bir resim üzerinden devam edeyim. Burada Windows Azure Mobile Services içerisinde ki belirli bileşenlerden bahsedelim.

Data

Veri kısmı için baktığımızda, SQL Database’i ile yapılandırılmış bir alanımız, depolama için oluşturulmuş servis API’larımız ve bunları azure üzerinde yazabildiğimiz zengin query yetenekleri sayesinde derleyebildiğimiz bir yapıyı bize sunuyor.

Server Logic

Server tarafında veriye ulaşabilmek ve Create, Read, Update, Delete işlerini yapabilmek için Javascript ile kod yazabildiğimiz bir yapıyı bize sağlıyor. Client’lar da SDK ile bu alana erişebiliyorlar. Dolayısıyla tablo üzerinde istediğimiz gibi Trigger’lar Store Procedure ‘ler yazabiliyoruz.

Authentication

Kimlik Doğrulama tarafında uygulama içerisinde Microsoft, Facebook, Twitter, Google hesapları ile kimlik doğrulatmak istediğimizde bu desteği bize sağlıyor. Bunu yaparken tablolarımıza ne derecede erişim sağlayabileceklerini belirleyebiliyoruz. Bununla ilgili örnekleri bir sonraki yazıda yapacağız.

Notifications

Notification tarafında Toast, Tile, Badge ve Raw olarak bildiğimiz uyarıları birden çok platform için düşündüğümüzde bir yerden uyarıyı gönderdiğimizde tüm platformlara bunu sağlama kısmını Azure başarılı bir şekilde hallediyor. Çünkü Android IOS ve Windows platformları için oturup tek tek arka plan kodu yazmak zor olacağı için Mobil Servis içerisinden yönetmek daha kolay olacaktır.

Scheduler

Scheduler tarafında server tarafında yazdığımız script kodları ile belirli aralıklarda ( saniye, dakika, saat, gün, ay ) yeni veri olup olmadığını kontrol etme işlemini de mobil servisler üzerinde yapabiliyoruz. Bu sayede elimizdeki data’yı Notification’lar ile birleştirerek Client’a yollama işlemini gerçekleştirmiş oluyoruz.

Logging and Diagnostic

Log’lama ve bu sonuçları kaydetme tarafında eğer uygulama içerisinde kullanıyorsanız hata oluşma senaryolarınıza göre server tarafında bu işlemler için bir script hazırlayabiliyorsunuz.

Scale

Ölçeklenebilirlik tarafı ticari anlamda en önemli kısımlardan biri. Uygulamanızın bir anda yüzbinlerde kişi tarafından kullanıldığını düşündüğünüzde sunucu yetersizliğinden dolayı ulaşılamayan uygulamalar yerine sizin belirlediğiniz kısıtlar ile gerektiğinde arttırılabilir bir yapı hazırlayabiliyorsunuz. Dolayısı ile dilerseniz 1 makine ile başlayıp daha sonra Auto Scale ile kullanım miktarına göre kendini ayarlayan ve faturayı aşmaması için sizin belirttiğiniz düzeyde duran bir hizmet sağlanmış oluyor.

Azure Mobile Servis’in sağladığı hizmetler bunlar. Sizde Azure Portal’dan gerekli SDK’leri indirip denemeye başlayabilirsiniz. Bir sonraki yazı da Mobile Servisleri kullanarak ve SDK’ları indirerek ilk mobil servis örneğimizi yapacağız.