Sunday, December 12, 2010

All new windows azure developer portal

The all new silverlight based developer portal for windows azure with some of the most awaited features is here. Two of my favs are support for extra small instances and VM role and offcourse the new UI gives much clear view of each component.



Wednesday, July 21, 2010

Scrum in day to day life

We all keep hearing about the agile and scrum in IT industry and we do implement it in various projects to make the life simpler. Scrum is gaining popularity in people’s day to day life. On the similar lines there is a very good initiative Scrum in Schools that actually teaches the scrum process to school kids. Long term vision is to cultivate the habit so that they take it forward to their entire life whether it is college or the organization they join to solve the complex problem in agile way.


There is free training available from Scrum Alliance which can be used by teachers or other professionals who are involved in training/coaching others. Very helpful for individual contributors also.

Tuesday, July 20, 2010

Windows Azure on premise hosting

Microsoft recently added a new product in its windows azure suit known as ‘windows azure platform appliances’. It is combination of hardware + software almost like a black box which allows you to host the windows azure on premise. This contains Windows azure and SQL azure plus hundreds of thousands of servers. The game plan looks like they companies will not be able to customize the azure installations and will use this as it is.
This will allow you to install your application in your own cloud, your partners cloud or on cloud offering hosted in Microsoft data centers. It opens lot of new opportunities for big players like Dell to provide new cloud based offering.

Thursday, July 1, 2010

All new asp.net development webserver : IIS Express

Recently Microsoft announced its all new asp.net development web server named IIS Express (though it’s not available for download as of now). This will replace the old buddy built-in visual studio web server known as “cassini”.

IIS express will give you all the powerful features for IIS in visual studio itself like SSL, URL Rewrite, Media Support, and all other IIS 7.x modules. Most probably this will be available with a patch for VS 2010.

For more details follow this

Friday, June 18, 2010

WCF 4.O Routing Service : Failover

In my last post i wrote about WCF 4.0 routing services and various scenarios where it can be used. Failover is one the scenario where routing services comes very handy, to my surprise last week I had an incident when few of my colleague asked how is it possible automatically (apnae aap kaise ho sakta hai). I do not blame that may be they are not aware of this beautiful add on feature in WCF 4.0. Just few configuration and you are done. Download Source Code

If you are new to WCF routing services I recommend reading this.

You just need to create a backuplist node under routing node in wcf configuration file as shown in the given below picture. Add you back up endpoint there and there you go




Steps to run the and test the source code. (You need VS2010 to run and test this application)

Source code contains

1) Two normal WCF services : Air service ( Air.svc) and Road Service (RoadService.svc)
2) One Routing Service : RoutingService.svc
3) Console Client: This call the routing service.

To test this application first run all the three services by right clicking and selecting view in browser for each of these files i.e Air.svc, RoadService.svc and RoutingService.svc. As you can see in the configuration of routing service RoadService is your primary endpoint  which means all the request should go to road service which you can verify by seeing the out put (in console client application) as “Travel by Road”. Now You stop the RoadService to simpulate the failover scenario, you will see that requests will automatically be going to AirService (which is your backup service incase of failover) which again you can verify y seeing the output.

In real business failover scenario these two service endpoint will be pointing to the same service, but here they are different services (Road and Air) just to test the failover.

Thursday, June 17, 2010

Solution architecture of a typical windows azure application

Few months back i got the chance to design a highly available and scalable application with multi-tenant support. And application should be able to scale up and down based on the user demand. After analysing various options finally we choose windows azure as a platform, this is typical high level solution architecture that we finalized. Feedback and comments on this are welcome :)



Wednesday, June 16, 2010

Security Best Practices For Developing Windows Azure Applications

Microsoft recently released the security guidelines that you should keep in mind while designing application on windows azure platform. It also explains the various technologies available for implementing security out of the box.

Download the document

Friday, June 11, 2010

WCF 4.0 Routing Service

Routing service is one of the very important and coolest features in WCF 4.0. In WCF 3.5 if you would like to implement Routing service, you need to explicitly code for that. Routing service allows you to define a single service for your client and it automatically takes care of routing the request to respective underlying services based on the routes and filters configured.

Thursday, June 10, 2010

Visual Studio 2010 UI changes

Microsoft recently released Power Tools add in for visual studio which can be downloaded from http://visualstudiogallery.msdn.microsoft.com/en-us/d0d33361-18e2-46c0-8ff2-4adea1e34fef. Very useful UI changes specially i liked where you can have tabs in different color for every project.


Tuesday, June 8, 2010

Windows Azure latest SDK Released

Windows azure latest SDK 1.2 (June 2010) has been released. Some of the cool features are

1) Support for VS2010 and .Net Framework 4.0
2) Visual studio explorer allow you to have read only view of Azure tables and blobs, no need to open a seperate tool for that.
3) Debugging issues on cloud using IntelliTrace, but for that you need to make sure that you enabled Enable IntelliTrace while deploying services in cloud

Download Link
http://www.microsoft.com/downloads/details.aspx?FamilyID=2274a0a8-5d37-4eac-b50a-e197dc340f6f&displaylang=en

Friday, June 4, 2010

VS 2010 WCF REST Template

Yesterday i was trying to create WCF REST Service using VS 2010, and to my surprise WCF rest service project template is missing. I spend some time to figure out and yes it is true by default it is not installed with VS 2010. You can download this from

http://visualstudiogallery.msdn.microsoft.com/en-us/fbc7e5c1-a0d2-41bd-9d7b-e54c845394cd

Wednesday, June 2, 2010

Google answers to azure storage

Google launched its storage platform (data will be stored in objects organized in flat structure) know as GSD ( Google Storage for Developers) which can accessed REST way, almost on the similar line Windows Azure storage works. Currently the service is in preview, and only available to US developers. For more detail refer to google code.

http://code.google.com/apis/storage/

WCF Base Address

Many of us have seen baseaddresses tag in WCF configuration files, it plays a very important role in the entire service hosting scenario. Just by knowing how to use, you save lot of time

Base address comes as follows in config




BaseAddress define the root address for your service whether it is mexendpoint or client endpoint . In the above example if you look at the address attribute of first endpoint node it is blank, then how come you are able to access this end point surprised? Its all because of baseAddress (try removing baseAddress it will give you an error). So take from this is incase you do not specify any value inside endpoint address it takes the value of baseAddress.
But not in all cases you would love this scenario, you might want to define you own address for endpoint or you might want to have different endpoint address for different clients. For that you just need to write the address in endpoint as shown above in endpoint node 2, it will automatically be taken as relative URI which mean what ever you write will be appended at the end of base address ( so your new endpoint address = baseAddress + endpoint address).


Biggest advantage is maintainability, when ever you migrate your services from Dev - QA - Production it makes changes very simple and less error prone.

But always remember for one service you can only have one base address for that scheme ( http, net/tcp). For example


Invalid declaration you can not have two base addresses under same service with same scheme



Valid Declaration, you can have two base address for one service with different schemes

Windows Azure CDN

Windows Azure Content Delivery Network (CDN) allows you to access your blobs from different location which ever is closed to the end user. It works by keeping local copies of your data in different locations (currently 19) and then based on the request from the end user it serves the data from the nearest location thus improving the user experience and reliability of content. You can configure the TTL (total time to live) for your data, after which it will automatically expire and it for subsequent requests it will fetch the data from central location.
Microsoft has recently accounted the pricing strategy for this. You can check the pricing detail at http://blogs.msdn.com/b/windowsazure/