Sunday, June 26, 2011

Azure Storage


Windows Azure is Microsoft's Cloud Computing offering that serves as the development, service host, and service management environment for the Windows Azure Platform. The Platform is comprised of three pieces: Windows Azure, SQL Azure, and AppFabric.
  • Windows Azure: Cloud-based Operating System which provides a virtualized hosting environment, computing resources, and storage.
  • SQL Azure: Cloud-based relational database management system that includes reporting and analytics.
  • AppFabric: Service bus and access control for connecting distributed applications, including both on-premise and cloud applications

Last week, I wrote about the successful launch of first cloud application http://ganesansenthilvel.cloudapp.net/ in Windows Azure. Now, letz shift our gear towards azure storage. Storage Services provides 3 main services:
  • Blob: Best for blobs like binary files and text files, so think picture storage, rich media storage, documents, etc.
  • Queue: Reliable and persistent messaging between services, so think about this in terms of having a worker role (business tier) communicate with a web role (presentation tier).
  • Table: Structured storage, so think more along the lines of storing entities
Read an interesting article, which compares two cloud storage offerings (google vs microsoft) from price, speed, usability, service level agreement and to developer support
http://gladinet.blogspot.com/2010/01/windows-azure-storage-vs-google-storage.html


Sunday, June 19, 2011

FirstCloudApp in Production




So far, we talked about the basic ingredients to kick start the windows azure application. In last few weeks, we discussed about Service Configuration, Service Definition, Runtime emulators and deployment management portal.


Letz start the first cloud application to move into production. In the New Windows Azure Project dialog of VisualStudio 2010, we need to select ASP.NET Web Role from the list of available roles inside the Roles panel and click the arrow (>) to add an instance of this role to the solution. Before closing the dialog, rename the role as FirstCloud_WebRole. Click OK to create the cloud service solution. It generates the pre defined ASP .NET solution files.


Cloud application has TWO major categories. They are (1) Compute and (2) Storage.


This application is related to compute platform i.e. not related to any cloud specific storage elements. As the first application, it contains the simple compute cloud app with two UI TABs, filled by static content. The layout is shared in the attached image.


On testing the local development version using Compute Emulator, the first cloud application is hosted in the production environment as defined in the management portal session.


My first cloud application is launched successfully in Microsoft data centre. Production URL is hosted as http://ganesansenthilvel.cloudapp.net/ Hurray!

Friday, June 3, 2011

Azure Emulator


The Windows Azure compute emulator enables you to run, test, debug, and fine-tune your application before you deploy it as a hosted service to Windows Azure.

The Windows Azure compute emulator is a local emulator of Windows Azure, so that you can build and test your application before deploying it to the Windows Azure. Some differences exist between running an application in the compute emulator and running it as a hosted service in Windows Azure. The compute emulator does not fully emulate the behavior of the Windows Azure load balancer. You can attach a debugger to a role instance running in the compute emulator, not in windows azure.

The Windows Azure compute emulator requires that you run IIS 7.0 with ASP.NET, but not all of the role services of IIS 7.0 and not all of the features of Windows Server 2008 are installed by default. The services and features that are installed by default are a subset of the services and features that are installed in Windows Azure. Most basic services can run in the compute emulator; however, when creating more advanced services you may need to take additional measures to ensure that your service will behave in the same ways in the cloud as it does when running in the compute emulator.

Architecture of emulator in cloud development is drawn in the attached snap shot.