...and everything in between RSS 2.0
# Tuesday, January 10, 2012

Come learn about the latest CTP pieces on the Windows Azure platform, Windows Azure Application Integration Services.
This month fellow Breezer, Mick Badran will be presenting to the Sydney Azure User Group.

Click here for more details

Tuesday, January 10, 2012 9:11:09 PM (AUS Eastern Daylight Time, UTC+11:00)  #    - Trackback
BizTalk General | Cloud Services | Windows Azure
# Thursday, December 01, 2011

As promised, here is the link to recent Azure live meeting recordings we ran for MS Events this week. Enjoy Smile

LIVE Meeting: Managing Windows Azure Applications

LIVE Meeting: Managing Windows Azure Applications

Event ID: 1032489408

Language(s): English.

Product(s): Microsoft SQL Server and Windows Azure.

 

So you just made your first Windows Azure deployment. Now what? Is it healthy? How many instances do you need? What will my bill be? When do I need to scale up? Was that a DoS attack? Will auto-patching break me? Getting an application into Windows Azure is the first step, now you have to run the application for the next three years. Come to this session and see how to manage and operate your Windows Azure applications.

 

 

View Online

Thursday, December 01, 2011 4:05:51 PM (AUS Eastern Daylight Time, UTC+11:00)  #    - Trackback
Windows Azure
# Tuesday, October 18, 2011

Microsoft Australia & Breeze are pleased to invite you to a breakfast Seminar on Cloud Integration

Sydney – November 16, 2011 8:30 - 11:00am
Venue: Breeze Office, 5a/2 New McLean Street, Edgecliff, NSW 2027
(Adjacent to Edgecliff Station)

With the excitement of technology moving towards “the Cloud” come and learn exactly what this means to your business and how your development projects can leverage the Windows Azure Platform without re-architecting your environment. Should you invest in private cloud, move your application to the public cloud, choose a hybrid approach or keep the application on-premise?
Hear from Microsoft about their cloud strategy and computing platform ‘Azure’ and what this provides with scalable computing power and storage, as well as a number of other online services hosted on Microsoft datacentres.
Hear from Breeze how to make this happen in the real world with measurable results. Breeze Integration Specialists will share with you some of their experiences in the field with helping customers maximise their existing investments as well as future scalability by utilizing the Azure platform with their integration development projects to date.
This seminar is an opportunity to gain insight with the Windows Azure Platform including Windows Azure AppFabric, SQL Azure, Windows Server AppFabric and BizTalk AppFabric Connect as well as meet the industry experts.
This seminar is for all Integration enthusiasts from IT Professionals, Developers to Business Decision Makers. Bring along your questions!

Seats are limited. Register NOW !!!!

For more information and to register contact emmav@breeze.net

Tuesday, October 18, 2011 1:35:46 PM (AUS Eastern Standard Time, UTC+10:00)  #    - Trackback
Breeze | Windows Azure
# Friday, October 14, 2011

Despite the dependency checker giving me the green light I found I still needed the ADO.NET Data Services Update for .NET Framework 3.5 SP1 update as I kept getting build errors due to the old System.Data.Service.Client assembly.

Azure_CmdLets_Checker

The project can be found on CodePlex here > http://wappowershell.codeplex.com/

Happy scripting…Nerd smile

Friday, October 14, 2011 1:28:47 PM (AUS Eastern Standard Time, UTC+10:00)  #    - Trackback
Windows Azure
# Monday, September 26, 2011

Free Azure session!!!

Mick and I are delivering a number of free Windows Azure session for Microsoft over the coming weeks. Be sure to connect on in and get up to speed on all things Azure.

clip_image001

LIVE - 2 Hour

IT Pro/Dev/ ISV

Sept 27th                                  2-4 pm

https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032489403&Culture=en-AU

Ten Must-Have Tools for Windows Azure

LIVE - 2 Hour

IT Pro

Oct 25th                                  2-4 pm

https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032489405&Culture=en-AU

An IT Pro View of Windows Azure

LIVE - 2 Hour

IT Pro/Dev/ ISV

Nov 22nd                                2-4 pm

https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032489407&Culture=en-AU

Managing Windows Azure Applications

* Note – All times are Australian Eastern Standard time (+10 GMT)

Monday, September 26, 2011 10:08:36 PM (AUS Eastern Standard Time, UTC+10:00)  #    - Trackback
Breeze | Cloud Services | Windows Azure
# Friday, September 09, 2011

A recent project of ours has made the news this week > Centrebet deploys app integration platform.

This was a great project to be involved in, consisting of a great mix of technology:

  • Microsoft BizTalk Server
  • Windows Server AppFabric
  • Windows Azure AppFabric Service Bus
  • Windows Azure Hosted Services
  • F# asynchronous programming

Case_Study_Overview

A real software engineering project that had to meet high throughput and low latency requirements, incorporate new technologies and come in on very (very) tight time frames. Credit to go out to the team at Breeze for getting this over the line.

Friday, September 09, 2011 8:59:08 AM (AUS Eastern Standard Time, UTC+10:00)  #    - Trackback
BizTalk General | Breeze | Cloud Services | F# | WCF | Windows Azure | Windows Server AppFabric
# Thursday, April 07, 2011

Hit this little hurdle recently while creating WCF Data Service against Azure Table Storage. At the moment only a handful of operators are supported by the client library when using the Table Storage Service.

Supported Query Operators

LINQ operator

Table service support

Additional information

From

Supported as defined.

 

Where

Supported as defined.

 

Take

Supported, with some restrictions.

The value specified for the Take operator must be less than or equal to 1,000. If it is greater than 1,000, the service returns status code 400 (Bad Request).

If the Take operator is not specified, a maximum of 1,000 entries will be returned.

First, FirstOrDefault

Supported.

 

What this means is that we can not perform LINQ queries that group, order by, distinct or even return single entity properties from the query (we must always return the entire entity). In most situations the solution is to construct our LINQ queries that first make use of the supported operators and then use AsEnumerable() followed by any operations that are not supported. This generates two parts to the LINQ query. The first part (everything before the AsEnumerable) gets sent to the backend (Azure Table Storage in this case) and the remaining parts execute locally against the results of the first (in-memory). This helps get over the road-block but as you can image you are bringing a greater chunk of data down to the client and continuing processing there.

Some examples:

Using Distinct()

var query = myTableServiceContext.MyEntity.Where(e => e.Category == someCatgeory).AsEnumerable().Select(c => c.Name).Distinct();
 
Select next 5 entities after a given date and time (using OrderBy together with Take)
 
var query = myTableServiceContext.MyEntity.Where(e => e.Category == someCatgeory & e.StartDate > DateTime.UtcNow).AsEnumerable().OrderBy(o => o.StartDate).Take(5);

For further details check out the online documentation.

Thursday, April 07, 2011 8:32:00 PM (AUS Eastern Standard Time, UTC+10:00)  #    - Trackback
.NET Framework | WCF | Windows Azure
# Wednesday, April 06, 2011

Just thought I might share some useful dev tools I have either found or have had recommended to me.

The first is a must if you are doing any LINQ action in your code (…and most of us are in some degree these days).
Check out LINQPad. I am blown away how useful this tool has been. Think SQL Management Studio for LINQ!

linqpadscreen

Another great tool I have been using lately is Neudesic’s Azure Storage Explorer

ase4_blobs

Essential for generating and managing Azure table storage data during development.
Plays nicely with both developer storage and Azure storage accounts.

Wednesday, April 06, 2011 2:53:00 AM (AUS Eastern Standard Time, UTC+10:00)  #    - Trackback
.NET Framework | Windows Azure
# Tuesday, April 05, 2011

Released just last week, this codeplex project aims to make developing WP7 apps that talk to cloud storage easier to develop. Having been down that path over the last few days I was keen to test it out.

We get some nice new project templates:

image_41

But most importantly we get

  • A “working” version of the OData client library (System.Data.Services.Client)
  • A Windows Phone 7 Azure StorageClient library (WindowsPhoneCloud.StorageClient)

Just in time Smile with tongue out

Tuesday, April 05, 2011 10:36:29 PM (AUS Eastern Standard Time, UTC+10:00)  #    - Trackback
Windows Azure | Windows Phone 7
# Tuesday, January 25, 2011

I am finding that the development storage emulator has a few “undocumented features”. A few days ago, I was happily working through the Windows Azure Training Kit and things were going well. Today I was putting together a PoC using pieces learnt from the labs. I kept hitting a problem when trying to insert an entity into the newly created table storage (running on the local Storage Emulator). I was getting the generic error message when querying the collection:

“one of the request inputs is not valid”

var match = (from c in this.context.Clients
              where c.Name == name
              select c).FirstOrDefault();

 

Some things I tried that didn’t help:

  • Restarting the Storage Emulator a few times.
  • Restarting the machine (always worth a shot!)
  • Deleting the entries in the TableContainer and TableRow tables in the development storage DB.
  • Recreating the development storage DB using DSINIT /forceCreate.
  • Running around the office naked.

After hunting around for quite some time (including running the lab code again and getting them same result) I tracked it down to the table storage schema not being created after issuing

CloudTableClient.CreateTablesFromModel(
   typeof(MyDataServiceContext),
   storageAccount.TableEndpoint.AbsoluteUri,
   storageAccount.Credentials);

Note: This worked happily when I was working through the labs a few days ago. Neither my code nor the lab code was working now. Annoyed

Looking at the underlying DB (using SQLEXPRESS on my VM) I found no schema populated

underlying_table_storage

After some frustrating searching, I came across this post that suggested an ugly work around > azure-table-storage-what-a-pain-in-the-ass. It suggests that on the local storage emulator you need to “convince” the table service provider that you know what you are doing by inserting some dummy entities. This only appears to be needed when you have no data in your tables. So I added the following code in my data source constructor so it gets called by my service before performing any CRUD operations. 

// [WORK AROUND] See http://deeperdesign.wordpress.com/2010/03/10/azure-table-storage-what-a-pain-in-the-ass/
//  Generate some inserts to populate empty table
var client = new Client("dummy", "dummy");
this.context.AddObject("Clients", client);
this.context.SaveChanges();
this.context.DeleteObject(client);
this.context.SaveChanges();
 
var post = new Post("dummy", "dummy");
this.context.AddObject("Posts", post);
this.context.SaveChanges();
this.context.DeleteObject(post);
this.context.SaveChanges();
 

Ugly but it jumps the hurdle and allows me to get back to building out the rest of the solution. Just remember to comment it back out after you verify the schema xml has been populated successfully and your CRUD operations are going through.

Tuesday, January 25, 2011 1:53:33 PM (AUS Eastern Daylight Time, UTC+11:00)  #    - Trackback
Windows Azure
# Tuesday, June 29, 2010

Setting up a new VM and hit this hurdle. Lucky for me Microsoft just released 1.2 of the SDK that supports VS 2010 and .NET 4.0 thumbs_up

Windows Azure SDK 1.2

Also, if you are using Windows Azure AppFabric and .NET 4.0 make sure the relay bindings are installed into the .NET 4.0 machine.config (not done by installer). Check out Wade’s post on how to go about it easily.

Keep those heads in the cloud

Tuesday, June 29, 2010 10:33:41 PM (AUS Eastern Standard Time, UTC+10:00)  #    - Trackback
Windows Azure
# Friday, November 28, 2008

This week I gave a presentation to the Sydney BizTalk User Group on (Biz)Talking to the Cloud. I showed how we can quickly and easily configure a BizTalk Receive Port to consume services hosted in the cloud. In the demo, we configured BizTalk to participate in a multicast events scenario.

I have been playing further with BizTalk and Cloud services and in this post I will demonstrate how to expose BizTalk Orchestrations to the Cloud. To make it easy for you to build this on your own environment, I have used the now famous (or infamous) EchoService as the basis of this demo. This allows you to use the existing Microsoft .NET Services SDK sample to call the BizTalk Orchestration through the cloud.

Before You Begin

  1. Sign-up to Microsoft .NET Services and create your Solution.
  2. Download the Microsoft .NET Services SDK and install on your BizTalk Server 2006 R2 development environment.
    Note: Nothing more is needed as far as BTS is concerned. I am pleased Microsoft is making good on ensuring developers can use existing skills and technologies to get started with cloud services. Furthermore, we can be fairly comfortable that playing around with this stuff is not going to break or render our existing dev environment useless. Credit where credit is due.

BizTalk Development

In this step we will create a simple orchestration that receives a generic message, pulls the "echo" text out, creates the response message, and sends it back out the two-way port. I have used System.Xml.XmlDocument types avoiding the need to create schemas and simplifying the demo.

  1. In Visual Studio 2005, create a new Empty BizTalk project.
  2. Go ahead and set your Assembly Key File and BizTalk Application project settings. (I called my BizTalk App BizTalk Services as we will see later on)
  3. Add a new Orchestration to the project.
  4. Create the following messages:
  5. Name Type
    msgRequest System.Xml.XmlDocument
    msgResponse System.Xml.XmlDocument

  6. Create the following variables:
  7. Name Type
    strText string
    strResponse string
    xmlDoc System.Xml.XmlDocument

  8. Add the following shapes to the design surface

    orchestration shapes
  9. In the Message Assignment shape enter the following code to construct the response message:
  10. // Retrieve the text sent in the request
    strText = xpath(msgRequest, "string(//*[local-name()='text'])");
    
    // Construct the response
    strResponse = System.String.Format("<EchoResponse xmlns=\"http://samples.microsoft.com/ServiceModel/Relay/\">
    <EchoResult>{0}</EchoResult></EchoResponse>"
    , "BizTalk: " + strText); // Create the response document xmlDoc.LoadXml(strResponse); // Assign the response message variable msgResponse = xmlDoc;





     
  11. Now add a Two-Way port setting the port Binding to Specify Later and the Type Modifier to Public.
    Note: As we will be binding to a physical receive port, operation names are not important here.
  12. Wire up the port operations and don't forget to set the Activate property of the Receive shape smile_wink
  13. Build and deploy your project.

BizTalk Application Configuration

In this step we will configure a WCF-Custom receive port to expose our newly created orchestration to the cloud.

  1. In BizTalk Server Administration Console, navigate to the BizTalk Application you just deployed to (mine was called BizTalk Services).
  2. Create a new Request-Response receive port.
  3. Add a new receive location and set the Transport type to WCF-Custom.

    new recv loc
  4. Configure the WCF-Custom adapter.
  5. Set the EndPoint Address to:

            sb://servicebus.windows.net/services/[your solution name]/EchoService/
  6. Set the Binding Type to NetTcpRelayBinding
    Note: This is one of the new bindings added when you installed the Microsoft .NET Services SDK

    nettcprelaybinding
  7. On the Behaviors tab, add a new behavior extension called transportClientEndpointBehavior to the EndPointBehavior node.
  8. Set the credentialType to UserNamePassword and enter your solution credentials on the UserNamePassword element of the ClientCredentials node.
    Note: If you are using Windows CardSpace instead, set the transportClientEndpointBehavior to use it here instead.

    transport client behavior
  9. Click Apply and verify no errors occurred with your WCF-Custom adapter configuration.
  10. Click OK to close the Adapter configuration dialog.
  11. Set the Receive Handler to your BizTalk Server Application host.
  12. Leave the Receive and Send piplines as PassThru (as we are not requiring xml parsing of the messages we are sending and receiving).
  13. Click OK to save the new receive location.
  14. Do likewise for the receive port.
  15. Now, configure your orchestration bindings and start the BizTalk application.

Verify the Service is Exposed to the Cloud

In this step we will browse to your Microsoft .NET Services service registry feed and verify your service is exposed to the cloud.

  1. Launch Internet Explorer and browse to the following URL:

         http://servicebus.windows.net/services/[your solution name]/
  2. You should now see your service endpoint listed in the Atom feed.

Test Your Solution

  1. In Windows Explorer, navigate to the samples folder under the install folder for Microsoft .NET Services SDK
    Note: If you installed to the default folder it should be C:\Program Files\Microsoft .NET Services (Nov 2008 CTP) SDK\Samples
  2. Locate the ServiceBus\GettingStarted\Echo sample and open your flavour of choice (C#/VB)
  3. Build the Solution using VS 2008
  4. Run the Client.exe
  5. Enter your Solution name and password.
  6. Enter some text to send to your service.
  7. Verify the service response includes BizTalk: <your echo text>

    testing

What did we just do?

Using only the new WCF features that were installed in the Microsoft .NET Services SDK we were able to configure a request-response receive port in BizTalk that exposed our orchestration to the cloud. This is very cool smile_shades.

At the very least, we could do away with the orchestration binding and just configure the receive port to drop messages into the BizTalk MsgBox. We then use content based routing to route the messages off to our existing orchestrations.

Think of the times you wanted to expose your BizTalk services to customers and clients outside your organisation, but had to jump all those hurdles the IT infrastructure team seams to magically come up with.

This is just the beginning...

Friday, November 28, 2008 10:35:49 PM (AUS Eastern Daylight Time, UTC+11:00)  #    - Trackback
BizTalk General | Cloud Services | Windows Azure
# Thursday, November 27, 2008

Having just travelled down this unpaved and, at times, rocky path I thought I might share my experience to those with similar travel plans.

1. Sign up to Windows Azure to get access to the Azure Services Developer Portal

http://www.microsoft.com/azure/register.mspx

azure services portal

2. Setting up the dev environment

—Vista 32 bit or Windows Server 2008

—Visual Studio 2008 SP 1

Time saver tips:

- I tried both installing to Win XP and Win Server 2003 but, no dice.

- I tried installing Windows Azure Tools on VS 2010. No good.

- Actually read the Help Documentation smile_embaressed

3. Download the SDK bits

http://www.microsoft.com/azure/sdk.mspx

—Windows Azure SDK

—.NET Services SDK

—SQL Data Services SDK

—Windows Azure Tools for Visual Studio

 

For those wanting stop-overs in more exotic locations like Microsoft .NET Services or SQL Data Services, you will need to register for these services separately and obtain an invitation code (took almost 2 weeks for mine to hit the inbox). This will give you access to those service portals and allow you to setup your Solution. One Solution per invitation is allowed.

For those less adventuress, you can just setup your dev environment and play with Windows Azure locally using the new Development Fabric simulated cloud environment.

Happy Travels

Thursday, November 27, 2008 10:18:26 AM (AUS Eastern Daylight Time, UTC+11:00)  #    - Trackback
Windows Azure
Navigation
Archive
<February 2012>
SunMonTueWedThuFriSat
2930311234
567891011
12131415161718
19202122232425
26272829123
45678910
Blogroll
About the author/Disclaimer

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2012
Breeze
Sign In
Statistics
Total Posts: 44
This Year: 1
This Month: 0
This Week: 0
Comments: 182
Themes
Pick a theme:
All Content © 2012, Breeze
DasBlog theme 'Business' created by Christoph De Baene (delarou)