Welcome!

@CloudExpo Authors: Jyoti Bansal, Yeshim Deniz, Greg Schulz, ManageEngine IT Matters, William Schmarzo

Related Topics: @CloudExpo, Microsoft Cloud, Silverlight

@CloudExpo: Article

Microsoft Windows Azure Distilled

Windows Azure's concepts of Web Role and Worker Role is absolutely, totally, and unequivocably a game-changer in cloud computing

As I spend more time with the CTP I will be posting more detailed, in-depth walkthroughs of the technologies as well as code samples (hopefully I'll get approved for my Azure hosting account soon *hint* *nudge* *wink*!!). For now, I'm just going to do a high-level breeze-by of the main aspects of Azure.

Windows Azure

Put simply - Windows Azure is a technology that will allow developers to build applications in the cloud. The GUI for the application is in the cloud, the back-end processes that are running are running in the cloud, and the central data store for the application is in the cloud. The great part about this is that you can run it all locally, test it, play with it and vet it. Then you can upgrade it so it's running locally but using cloud storage. When you're finally set that your app is ready for primetime, you can push the app to the cloud and continue using cloud storage. 

On a lower level, Windows Azure allows you to build and publish these things called Web Roles and Worker Roles. A Web Role is nothing more than a bunch of code that has been bundled up and pushed into the cloud that responds to HTTP(S) requests. These Web Roles, at least in this CTP, are ASP.NET applications but it looks as though you'll be able to do Ruby on Rails, PHP (god forbid), Python, or whatever you like. I'm hoping for a VS 2008 plugin that lets me build ASP.NET MVC Beta 1 apps that can be published as Azure Web Roles. A Worker Role is a piece of .NET code that is running in the background.

Traditionally one of the biggest problems people have, from hobbyists to developers for huge corporations, is that external hosting facilities only work well if your ASP.NET app is 100% self-contained and requires no additional services and no background processing, etc. Windows Azure lets you develop apps in cloud AND push your services into the cloud AND store your data in the cloud. Keep in mind that a Silverlight application counts as a web application ;) Starting to see the possibilities here?

.NET Services

Apple's MobileMe slogan was at one point "Exchange for the rest of us". .NET Services can be thought of as "Biztalk Services (in the cloud) for the rest of us". The bottom line is that .NET Services are a cloud-centric way of solving many of the problems of distributed applications. There are three main pieces of .NET Services:

  • Access Control
  • Service Bus
  • Workflow
While access control is certainly nice, and it is done using tokens and claims (more on that in another blog post... tokens, STS, claims, and authentication is a pretty dry topic and needs a good sample when talking around it), the thing that interests me here the most is the Service Bus. The Service Bus allows you to create these publicly exposed endpoint URIs for services. You can then host that service from some application on some desktop. Any client that knows the public URI for that service can then connect to that desktop application and consume the service - regardless of whether that client is on a 10.* or 192.168.* subnet, behind firewalls, in a Starbucks, or whatever. The "cloud" is providing a relay service through which clients in a distributed application can communicate with each other. One of the relay types that I am REALLY looking forward to experimenting with is the P2P relay, which I would assume allows me to have a globally registered peer mesh, allowing all of my app clients to talk to each other, no matter where they are in the world (note: this assertion has yet to be proved, I'm just dreaming big at this point). Workflow is also pretty big if you've been using WF now. Think of this as the WF integration that BizTalk was going to get, but plugged into the cloud.

SQL Services

I'm sure a lot of data guys are going to be pretty excited about this, but for me it's pretty straightforward. SQL data (in a slightly different shape and form than if you were storing it in your own SQL 2008 Server in your enterprise) in the cloud. I can imagine big concerns around privacy, encryption, and reliability will crop up around SQL services in the cloud.

Live Services

Live Services isn't really all that new, they're just being re-branded underneath the Azure umbrella. This is all of the goodies that you get with the Live APIs like contacts, calendars, e-mail, identity, etc.

Summary and Vision

So..what does all this stuff mean anyway? What's in it for you? In the short term what it means is that developers are going to start finding that they have been given a ridiculous amount of power. This is more than just Microsoft hosting your code in some central data centers... This is Microsoft abstracting away the notions of data centers, virtual machines, or even physical CPU cores (well, that abstraction is coming later). If you want to build an internet application, and you want to build it quickly and easily and you know that your app needs to run "out there", and you don't have the resources to do it yourself, or have your own data center, then you're going to find that Azure may just be that enabling force that we've all been missing for so long.

Windows Azure's concepts of Web Role and Worker Role is absolutely, totally, and unequivocably a game-changer in the world of cloud computing. The best thing we've had prior to this were cloud-hosted VMs that had a predefined stack (e.g. ASP.NET or J2EE or PHP or Cold Fusion, etc) to which we could upload our code and hope it all worked. There are always problems in managing configuration files of hosted apps and your hosted app NEVER behaves the same way while hosted as it does on your home PC. With Windows Azure, they're saying - quit worrying about the physical logistics - build your app, write your logic, use (cloud) data, and fahgeddaboudit. If the price is comparable - where are you going to host your back-end services? Amazon's EC2 or Azure, especially if you want to write your back-end services in .NET? 

If the prices are comparable, are you going to write your cloud app to use S3 data or SQL Services or Azure cloud storage?

Even just a few years ago, people didn't live on their computers - they thought of them the same way they thought of their graphing calculators - only they were more powerful. Now, people live on their computers. Moreover, they live online. They live connected. They live attached to the cloud. The problem is that right now, developers don't live attached to the cloud. 

Before cloud services, picture a meeting between a couple hobbyists who are thinking of building an app. They say, "Ok, we're going to need a web app.. but, we'll need some services and some central storage." At that point, they're forced to lease space in a data center, paying up front before anyone is even using their app, or they're forced to make COMPROMISES in their app's DESIGN to accomodate limitations of hosting companies.

With cloud services like Azure, those same people in that room talking about big ideas for big apps can now simply concern themselves with what they want their app to do instead of how they're going to manage the logistics.

-- That said, this is all on probably a 1.5 to 2 year time frame before this stuff is fully baked and they've got critical mass adoption. There is a lot of promise in Azure. Here's to hoping they pull it off.

tags:        
links: digg this  del.icio.us  technorati  reddit 

More Stories By Kevin Hoffman

Kevin Hoffman, editor-in-chief of SYS-CON's iPhone Developer's Journal, has been programming since he was 10 and has written everything from DOS shareware to n-tier, enterprise web applications in VB, C++, Delphi, and C. Hoffman is coauthor of Professional .NET Framework (Wrox Press) and co-author with Robert Foster of Microsoft SharePoint 2007 Development Unleashed. He authors The .NET Addict's Blog at .NET Developer's Journal.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


@CloudExpo Stories
All clouds are not equal. To succeed in a DevOps context, organizations should plan to develop/deploy apps across a choice of on-premise and public clouds simultaneously depending on the business needs. This is where the concept of the Lean Cloud comes in - resting on the idea that you often need to relocate your app modules over their life cycles for both innovation and operational efficiency in the cloud. In his session at @DevOpsSummit at19th Cloud Expo, Valentin (Val) Bercovici, CTO of Soli...
Almost two-thirds of companies either have or soon will have IoT as the backbone of their business. Though, IoT is far more complex than most firms expected with a majority of IoT projects having failed. How can you not get trapped in the pitfalls? In his session at @ThingsExpo, Tony Shan, Chief IoTologist at Wipro, will introduce a holistic method of IoTification, which is the process of IoTifying the existing technology portfolios and business models to adopt and leverage IoT. He will delve in...
Bert Loomis was a visionary. This general session will highlight how Bert Loomis and people like him inspire us to build great things with small inventions. In their general session at 19th Cloud Expo, Harold Hannon, Architect at IBM Bluemix, and Michael O'Neill, Strategic Business Development at Nvidia, discussed the accelerating pace of AI development and how IBM Cloud and NVIDIA are partnering to bring AI capabilities to "every day," on-demand. They also reviewed two "free infrastructure" pr...
Cloud Expo, Inc. has announced today that Aruna Ravichandran, vice president of DevOps Product and Solutions Marketing at CA Technologies, has been named co-conference chair of DevOps at Cloud Expo 2017. The @DevOpsSummit at Cloud Expo New York will take place on June 6-8, 2017, at the Javits Center in New York City, New York, and @DevOpsSummit at Cloud Expo Silicon Valley will take place Oct. 31-Nov. 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
In his session at @ThingsExpo, Steve Wilkes, CTO and founder of Striim, will delve into four enterprise-scale, business-critical case studies where streaming analytics serves as the key to enabling real-time data integration and right-time insights in hybrid cloud, IoT, and fog computing environments. As part of this discussion, he will also present a demo based on its partnership with Fujitsu, highlighting their technologies in a healthcare IoT use-case. The demo showcases the tracking of pati...
Tricky charts and visually deceptive graphs often make a case for the impact IT performance has on business. The debate isn't around the obvious; of course, IT performance metrics like website load time influence business metrics such as conversions and revenue. Rather, this presentation will explore various data analysis concepts to understand how, and how not to, assert such correlations. In his session at 20th Cloud Expo, Leo Vasiliou, Director of Web Performance Engineering at Catchpoint Sys...
The buzz continues for cloud, data analytics and the Internet of Things (IoT) and their collective impact across all industries. But a new conversation is emerging - how do companies use industry disruption and technology enablers to lead in markets undergoing change, uncertainty and ambiguity? Organizations of all sizes need to evolve and transform, often under massive pressure, as industry lines blur and merge and traditional business models are assaulted and turned upside down. In this new da...
Stratoscale, the software company developing the next generation data center operating system, exhibited at SYS-CON's 18th International Cloud Expo®, which took place at the Javits Center in New York City, NY, in June 2016.Stratoscale is revolutionizing the data center with a zero-to-cloud-in-minutes solution. With Stratoscale’s hardware-agnostic, Software Defined Data Center (SDDC) solution to store everything, run anything and scale everywhere, IT is empowered to take control of their data ce...
It is one thing to build single industrial IoT applications, but what will it take to build the Smart Cities and truly society changing applications of the future? The technology won’t be the problem, it will be the number of parties that need to work together and be aligned in their motivation to succeed. In his Day 2 Keynote at @ThingsExpo, Henrik Kenani Dahlgren, Portfolio Marketing Manager at Ericsson, discussed how to plan to cooperate, partner, and form lasting all-star teams to change the...
For organizations that have amassed large sums of software complexity, taking a microservices approach is the first step toward DevOps and continuous improvement / development. Integrating system-level analysis with microservices makes it easier to change and add functionality to applications at any time without the increase of risk. Before you start big transformation projects or a cloud migration, make sure these changes won’t take down your entire organization.
What are the new priorities for the connected business? First: businesses need to think differently about the types of connections they will need to make – these span well beyond the traditional app to app into more modern forms of integration including SaaS integrations, mobile integrations, APIs, device integration and Big Data integration. It’s important these are unified together vs. doing them all piecemeal. Second, these types of connections need to be simple to design, adapt and configure...
To manage complex web services with lots of calls to the cloud, many businesses have invested in Application Performance Management (APM) and Network Performance Management (NPM) tools. Together APM and NPM tools are essential aids in improving a business's infrastructure required to support an effective web experience... but they are missing a critical component - Internet visibility.
Microservices are a very exciting architectural approach that many organizations are looking to as a way to accelerate innovation. Microservices promise to allow teams to move away from monolithic "ball of mud" systems, but the reality is that, in the vast majority of organizations, different projects and technologies will continue to be developed at different speeds. How to handle the dependencies between these disparate systems with different iteration cycles? Consider the "canoncial problem" ...
Both SaaS vendors and SaaS buyers are going “all-in” to hyperscale IaaS platforms such as AWS, which is disrupting the SaaS value proposition. Why should the enterprise SaaS consumer pay for the SaaS service if their data is resident in adjacent AWS S3 buckets? If both SaaS sellers and buyers are using the same cloud tools, automation and pay-per-transaction model offered by IaaS platforms, then why not host the “shrink-wrapped” software in the customers’ cloud? Further, serverless computing, cl...
“We're a global managed hosting provider. Our core customer set is a U.S.-based customer that is looking to go global,” explained Adam Rogers, Managing Director at ANEXIA, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.
The speed of software changes in growing and large scale rapid-paced DevOps environments presents a challenge for continuous testing. Many organizations struggle to get this right. Practices that work for small scale continuous testing may not be sufficient as the requirements grow. In his session at DevOps Summit, Marc Hornbeek, Sr. Solutions Architect of DevOps continuous test solutions at Spirent Communications, explained the best practices of continuous testing at high scale, which is rele...
Hardware virtualization and cloud computing allowed us to increase resource utilization and increase our flexibility to respond to business demand. Docker Containers are the next quantum leap - Are they?! Databases always represented an additional set of challenges unique to running workloads requiring a maximum of I/O, network, CPU resources combined with data locality.
"Matrix is an ambitious open standard and implementation that's set up to break down the fragmentation problems that exist in IP messaging and VoIP communication," explained John Woolf, Technical Evangelist at Matrix, in this SYS-CON.tv interview at @ThingsExpo, held Nov 4–6, 2014, at the Santa Clara Convention Center in Santa Clara, CA.
"A lot of times people will come to us and have a very diverse set of requirements or very customized need and we'll help them to implement it in a fashion that you can't just buy off of the shelf," explained Nick Rose, CTO of Enzu, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.
As software becomes more and more complex, we, as software developers, have been splitting up our code into smaller and smaller components. This is also true for the environment in which we run our code: going from bare metal, to VMs to the modern-day Cloud Native world of containers, schedulers and micro services. While we have figured out how to run containerized applications in the cloud using schedulers, we've yet to come up with a good solution to bridge the gap between getting your contain...