For the push notifications platform powering Start Screen Live Tiles

Nov 3, 2011 08:26 GMT  ·  By

When building the infrastructure of the Start Screen Live Tiles notifications in Windows 8, Microsoft borrowed a page from the Windows Live Messenger book.

The Windows Push Notifications Service (WNS), a key part of the system through which information reaches Windows 8 users via the Live Tiles on the Start Screen is in fact based on the Windows Live Messenger service architecture, revealed Ryan Haveson, a group program manager on the User Experience team.

Not only this, but the people behind the service architecture of the Messenger client also built WSN.

But WSN is only a part of the new Windows 8 push notification platform, which also involves components such as the App Service and the Windows 8 client platform.

Overall, the push notification platform for the next generation of Windows was built with scalability in mind, while also being optimized to deliver only a minimal system impact.

Users running Windows 8 should in fact not notice any impact on either performance or battery life of their devices, even in scenarios in which a large number of Live Tiles are updating on the Start Screen.

Here is a list of design goals for Live Tiles notifications that Haveson enumerated:

“• Allow hundreds of live tiles without degrading performance

• Go beyond balloons, badges and text, with beautiful images

• Make it easy for developers so they can just “fire and forget”

• Achieve real-time delivery so delivering “instant messages” is instant.”

Critical to reaching the goals mentioned above was the decision to create a data-driven platform, and not allow applications to run in the background of the Start Screen.

“This means that a developer can express their tile using a set of predefined properties and templates, in this case, using an XML schema. The XML tile data is then sent to the Windows Push Notification Service (WNS) via a simple HTTP POST and then we take care of the rest. All the code for connecting, retrying, authentication, caching, rendering, error handling, etc. is done in a uniform and power-efficient way,” Haveson said.

With no apps controlling notifications, performance and high-fidelity experience were guaranteed, and the Redmond company needed only to figure out how to do real-time delivery and fire-and-forget-it efficiency.

Essentially, the choice was between polling and pushing for client/server content delivery. But the first implies that apps would need to stay active in order to connect to the server and see whether new content was available. Polling would end up impacting performance, battery life and still not offer a real-time experience.

“Thus, for Windows 8 we architected a push-based service. This was a big decision because it meant we would need to build a platform at a global scale, eventually powering the tiles for hundreds of thousands of apps and over a billion people. But the value was clear: developers would get super-efficient real-time notifications to their customers for free, without having to build or maintain their own persistent connections to the client,” Haveson added.

With the new Windows 8 push notification platform, Cloud services will send content down to the client, and have Live Tiles update on the Start Screen instantaneously, without client-side apps running in the background and impacting performance and battery life.

Windows 8 Developer Preview Build 8102 Milestone 3 (M3) is available for download here.

Photo Gallery (2 Images)

Windows 8 Start Screen
Windows 8 push notification platform
Open gallery