Pages

Ads 468x60px

Thursday, 15 September 2011

Windows Azure Development Fabric and Develoment Storage

The Develoment Fabric
The Development Fabric comprises these executables : DFLoadBalancer.exe, DFAgent.exe, DFService.exe and DFMonitor.exe which the SDK setup program installs by default. The task manager’s process tab will show all these four process in the list as soon as you start the development fabric.
The Development Storage
The Azure platform supports three types of scalable storage
  • unstructured data (blobs)
  • structured data (tables)
  • messages between apps, services or both (queues)
execute rundevstore.exe or building and running the Azure user code in VS starts all three services even if your project requires only one of these three services.
For protection against data loss, Azure Cloud will store blobs, tables and queues in atleast three separate containers in a Single data center. You can duplicate this data any time using geolocation feature to the data center of your choice.
Azure service Definition and Service Configuration Files
An Azure project’s ServiceDefinition.csdef file defines a set of standard input endpoints and configuration settings whose values are stored in this file.
A sample code of an Azure ServiceDefinition.csdef file
<?xml version="1.0" encoding="utf-8"?>
<ServiceDefinition name="WindowsAzureProject2" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition">
  <WebRole name="WebRole1">
    <Sites>
      <Site name="Web">
        <Bindings>
          <Binding name="Endpoint1" endpointName="Endpoint1" />
        </Bindings>
      </Site>
    </Sites>
    <Endpoints>
      <InputEndpoint name="Endpoint1" protocol="http" port="80" />
    </Endpoints>
    <Imports>
      <Import moduleName="Diagnostics" />
    </Imports>
  </WebRole>
  <WebRole name="WCFServiceWebRole1">
    <Sites>
      <Site name="Web">
        <Bindings>
          <Binding name="Endpoint1" endpointName="Endpoint1" />
        </Bindings>
      </Site>
    </Sites>
    <Endpoints>
      <InputEndpoint name="Endpoint1" protocol="http" port="8080" />
    </Endpoints>
    <Imports>
      <Import moduleName="Diagnostics" />
    </Imports>
    <LocalResources>
      <LocalStorage name="WCFServiceWebRole1.svclog" sizeInMB="1000" cleanOnRoleRecycle="false" />
    </LocalResources>
  </WebRole>
  <WorkerRole name="WorkerRole1">
    <Imports>
      <Import moduleName="Diagnostics" />
    </Imports>
  </WorkerRole>
  <WebRole name="WebCgiRole1" enableNativeCodeExecution="true">
    <Sites>
      <Site name="Web">
        <Bindings>
          <Binding name="Endpoint1" endpointName="Endpoint1" />
        </Bindings>
      </Site>
    </Sites>
    <Endpoints>
      <InputEndpoint name="Endpoint1" protocol="http" port="8081" />
    </Endpoints>
    <Imports>
      <Import moduleName="Diagnostics" />
    </Imports>
  </WebRole>
  <WebRole name="BusinessApplication1.Web">
    <Sites>
      <Site name="Web">
        <Bindings>
          <Binding name="Endpoint1" endpointName="Endpoint1" />
        </Bindings>
      </Site>
    </Sites>
    <Endpoints>
      <InputEndpoint name="Endpoint1" protocol="http" port="8082" />
    </Endpoints>
    <Imports>
      <Import moduleName="Diagnostics" />
    </Imports>
  </WebRole>
</ServiceDefinition>

To be continued...

Liked this post, then share it on your favorite social networks for your friends to read it

No comments:

Post a Comment