Windows Azure Platform gets easier for PHP developers to write modern cloud applications by diTii


									These pragmatic examples are good illustrations demonstrating Windows Azure interoperability . Keep in
mind that Microsoft’s investment and participation in these projects is part of our ongoing commitment to
openness, which spans the way we build products, collaborate with customers, and work with others in
the industry.

A comprehensive set of tools and building blocks to pick and choose from

We’ve come a long way since we released the first Windows Azure SDK for PHP in May 2009, by
adding complementary solutions with the Eclipse plug-in and the command line tools.

The Windows Azure SDK for PHP gives PHP developers a speed dial to easily extend their applications
by leveraging Windows Azure services (like blobs, tables and queues), whether they run on Windows
Azure or on another cloud platform. Maarten Balliauw, from RealDolmen, today released the version 2.0
of the SDK. Check out the new features on the project site:
An example of how this SDK can be used is the Windows Azure Storage for WordPress, which allows
developers running their own instance of WordPress to take advantage of the Windows Azure Storage
services, including the Content Delivery Network (CDN) feature. It provides a consistent storage
mechanism for WordPress Media in a scale-out architecture where the individual Web servers don't share
a disk.

Today we are also announcing updates on the Windows Azure Tools for Eclipse for PHP and the
Windows Azure Command-line Tools for PHP.

Developed by Soyatec, the Windows Azure Tools for Eclipse plug-in offers PHP developers a series of
wizards and utilities that allows them to write, debug, configure, and deploy PHP applications to Windows
Azure. For example, the plug-in includes a Window Azure storage explorer that allows developers to
browse data contained into the Windows Azure tables, blobs, or queues. The September 2010 Update
includes many new features like enabling Windows Azure Drives, providing the PHP runtime of your
choice, deploying directly to Windows Azure (without going through the Azure Portal), or the Integration
of SQL CRUD for PHP, just to name a few. We will publish detailed information shortly, and in the
meantime, check out the project site:

We know that PHP developers use various developments environments – or none J, so that’s why we
built the Windows Azure Command-line Tools, which let you easily package and deploy PHP applications
to Windows Azure using a simple command-line tool. The September 2010 Update includes more
deployment options, like new support for the Windows Azure Web & Worker roles.

So you might think that from the PHP developer point of view, you’re covered to write and deploy cloud
applications for Windows Azure.” The answer is both yes, and no!
Yes, because these tools cover most scenarios where developers are building and deploying one
application at time. But what if you want to deploy open source PHP SaaS applications on the same
Windows Azure service? Or what if you are more of a Web applications administrator, and just want to
deploy pre-built applications and simply configure them?

This is where the Windows Azure Companion comes into the picture.

A seamless experience when deploying PHP apps to Windows Azure

The Windows Azure Companion – September 2010 CTP– is a new tool that aims to provide a seamless
experience when installing and configuring PHP platform-elements (PHP runtime, extensions) and Web
applications running on Windows Azure. This early version focuses on PHP, but it may be extended for
deploying any open source component or application that runs on Windows Azure. Read below for more

It is designed for developers and Web application administrators who want to more efficiently “manage” 
the deployment, configuration and execution of their PHP platform-elements and applications.

The Windows Azure Companion can be seen as an installation engine that is running on your Windows
Azure service. It is fully customizable through a feed which describes what components to install. Getting
started is an easy three step process:

  1. Download the Windows Azure Companion package & set your custom feed
  2. Deploy Windows Azure Companion package to your Windows Azure account
  3. Using the Windows Azure Companion and your custom feed, deploy the PHP runtime,
     frameworks, and applications that you want

So, how did we build the Windows Azure Companion? The Windows Azure Companion itself is a Web
application built in ASP.NET/C#. Why C#? Why not PHP? The answer is simple: the application is doing
some low-level work with the Windows Azure infrastructure. In particular, it spins the Windows Azure
Hosted Web Core Worker Role in which the PHP engine and applications are started and then executed.
Doing these low level tasks in PHP would be much more difficult, so we chose C# instead. The source
and the installable package (.cspkg & config files) are available on the MSDN Code Gallery: And from a PHP developer perspective, all you need is
the installable package, and you don’t have to worry about the rest unless you are interested!

All you need is in the feed

The Windows Azure Companion Web application uses an ATOM feed as the data-source to display the
platform-elements and Web applications that are available for installation. The feed provides detailed
information about the platform element or application, such as production version, download location, and
associated dependencies. The feed must be hosted on an Internet accessible location that is available to
the Windows Azure Companion Web application. The feed conforms to the standard ATOM schema with
one or more product entries as shown below:

<?xml version="1.0" encoding="utf-8"?>
 <feed xmlns="">
 <title>Windows Azure platform Companion Applications Feed</title>
<link href="" />
<name>Interoperability @ Microsoft</name>
<id> </id>
   <installCategory>Frameworks and SDKs</installCategory>
    <!-- UI elements shown in Windows Azure platform Companion -->
   <title>OData SDK for PHP</title>
   <summary>OData SDK for PHP</summary>
    <!-- Installation Information -->
     <installerFile version="2.0" url="
          <installationProperty name="downloadFileName" value="" />
          <installationProperty name="applicationPath" value="framework" />
    <!-- Product dependencies -->

If you want to see a sample feed in action and the process for building it, I invite you to check Maarten
Balliauw’s blog: Introducing Windows Azure Companion Cloud for the masses. He has assembled a
custom feed with interesting options to play with. And of course, the goal is to let you design the feed that
contains the options and applications you need.

To top