Makale Özeti

Cloud Servis ile projelerin nasıl oluşturulduğunu incelemeye çalışıyor olacağız.

Makale

Windows Azure ve Cloud Computing ile Uygulama Geliştirme

Bir önceki yazımızda Windows Azure ve Cloud Computing ‘i detaylı bir şekilde açıklamaya çalıştık. Şimdi ise Uygulamaları nasıl geliştireceğimize göz atmaya çalışacağız.

Azure ile uygulama geliştirmeyi Visual Studio 2008 + SP1 ve Azure SDK yüklü olan bir bilgisayar üzerinde gerçekleştireceğiz.

Visual Studio 2008 yukarıda belirttiğimiz şartlar doğrultusunda hazırlandıktan sonra artık ilk uygulamamızı geliştirmek için hazır bulunuyoruz. File-> New Project yolundan sonra karşımıza gelen ekrandan Cloud Service seçeneğini seçtikten sonra karşımıza gelen şablonlardan Web Cloud Service seçeneğini seçerek uygulamamızı oluşturuyoruz.



Oluşturulan projenin içerisinde servis rolleri başta olmak üzere bazı klasörler oluşmaktadır. Bunların ne olduğuna göz atmak gerekirse;



Oluşturulan iki projeden birincisi Cloud Servistir. Bu proje üzerinde Web üzerinde uygulanacak olan roller, *.cscfg uzantılı Cloud Service Configuration dosyası, *.csdef uzantılı Cloud Service Defination dosyası bulunmaktadır. Bir diğer proje ise rol tabanlı olarak çalışan bir web projesidir.

Şimdi Default.aspx dosyasını açarak içerisine bir tane Label kontrolü ekliyoruz.



Sonrasında ise Label kontrolünün text özelliğine istediğimiz bir değer atıyoruz.
Label1.Text = “Hello Windows Azure”;

Daha sonra projemizin çalıştığı zaman dosya bazlı rollerini belirlemek için ServiceConfiguration.cscfg dosyasını açarak Instance yazan satırdaki 1 değerini 2 olarak değiştiriyoruz.



Projemizi derledikten sonra debug modda çalıştırdığımızda bize nasıl bir tepki verdiğine göz atalım;

Eğer ki uygulamamız normal bir şekilde derlendiyse bize Development Storage ve Development Fabric otomatik olarak çalıştırılmaktadır.

Not: Eğer ki bilgisayarınızda development storage çalışırken hata verdiyse aşağıdaki işlemi uygulayarak çalışır duruma getirebilirsiniz.

Windows Azure Mart SDK ‘sını bilgisayarımıza kurduğumuzda varsayılan sql server olarak .\SqlExpress gelmektedir. Eğer ki faklı bir sql instance ‘ı kullanıyorsak ve Development Storage ‘ı kullanmak istediğimizde bizlere “Sql instance ‘ın da bir SQL Server bulamadım.” mesajını verecektir. Bu durumda yapmamız gereken Azure SDK ‘nın kurulu olduğu klasöre giderek DevelopmentStorage ‘ı buluruz.



Yukarıdaki ekranı çıkarmak için DevelopmentStorage uygulamasının üzerinde sağa tıklayıp özellikler seçeneğine basarsak elde edebilirsiniz.

Karşımıza çıkan ekranda DevelopmentStorage.exe ‘yi çift tıklayarak ister not defterinde ister Visual Studio ‘da isterseniz de başka herhangi bir metin düzenleyici de açabilirsiniz. Düzenlemelerimizi .\SqlExpress yazan yerlerde yapacağız.

Değiştirilecek yerler:

<connectionStrings>
    <add name="DevelopmentStorageDbConnectionString"
        connectionString="Data Source=.\SqlExpress;Initial Catalog=DevelopmentStorageDb;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>

<services>
    <service name="Blob"
       url="http://127.0.0.1:10000/"/>
    <service name="Queue"
       url="http://127.0.0.1:10001/"/>
    <service name="Table"
       url="http://127.0.0.1:10002/"
          dbServer="localhost\SqlExpress"/>
</services>

Yukarıda config dosya içersinde yer alan .\SqlExpress ‘leri kendimize uygun bir şekilde değiştirdiğimizde artık uygulamamız çalışır duruma geliyor. Sonrasında da bize aşağıdaki gibi bir ekran sunarak artık servislerimizi yönetebilmemize olanak tanıyacaktır.



Development Fabric ‘i incelersek bize rollerimizin başladığını ve servis detaylarımızı göstermektedir. Biz biraz önce config dosyasında yaptığımız değişiklikle iki tane rolün çalışmasını istemiştik. Çalıştırılan rolleri Developemnt Fabric üzerinde görebilmemiz mümkündür.

Not: Development Fabric ortalama 30 ile 90 saniye arasında başlamaktadır.



CloudService ile imzalı web servis oluşturmaktadır. Bu servisi Service Details seçeneğinde görebilmemiz mümkündür.



Rollerimizi Web rol seçeneğine bastığımızda görebilmemiz mümkündür. Ayrıca bu rollerin de çalıştığı gözlemlenmektedir. Eğer ki config dosyasında Instance değerini bir vermiş olsaydık bize gösterilecek olan web rol de bir tane olacaktı.

Son olarak oluşturulan sayfamıza göz atalım;



Her şey sorunsuzca oluşmuş ve ilk Cloud uygulamamızı oluşturmuş bulunuyoruz. Eğer projemize breakpoint koyduğumuz bir bölüm varsa da sorunsuzca debug edebilmemiz mümkündür.

Herkese mutlu günler diliyorum.

Turhal Temizer
info@turhaltemizer.com
http://turhal.blogspot.com