Ethan Jackson - Specifying Cloud Applications
- Posted: Jan 19, 2009 at 12:03 PM
- 51,075 Views
- 2 Comments
Download
How do I download the videos?
- To download, right click the file type you would like and pick “Save target as…” or “Save link as…”
Why should I download videos from Channel9?
- It's an easy way to save the videos you like locally.
- You can save the videos in order to watch them offline.
- If all you want is to hear the audio, you can download the MP3!
Which version should I choose?
- If you want to view the video on your PC, Xbox or Media Center, download the High Quality WMV file (this is the highest quality version we have available).
- If you'd like a lower bitrate version, to reduce the download time or cost, then choose the Medium Quality WMV file.
- If you have a Zune, WP7, iPhone, iPad, or iPod device, choose the low or medium MP4 file.
- If you just want to hear the audio of the video, choose the MP3 file.
Right click “Save as…”
- High Quality WMV (PC, Xbox, MCE)
- MP3 (Audio only)
- MP4 (iPod, Zune HD)
- Mid Quality WMV (Lo-band, Mobile)
Cloud applications are web-based distributed systems deployed over a fluctuating set of computing nodes and services. The design of cloud applications is particularly challenging because few assumptions can be made about the connectivity of nodes, the availability of services, and the long-term evolution of the computing fabric. Ethan describes a new approach to architecting cloud applications. His approach gives developers a powerful set of abstractions that they can use to engineer systems beyond a client-server architecture, while understanding the behavior of their applications in a cloud environment. This is part 1, where we introduce the basic concepts on the whiteboard.
- BAM project home page
The Research in Software Engineering team (RiSE) coordinates Microsoft's research in Software Engineering in Redmond, USA.
Comments Closed
Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation,
please create a new thread in our Forums,
or
Contact Us and let us know.
Follow the Discussion
or if some state is updated in clique A and a client that happens to be in clique B lisents to that state?
That's an interesting question. The idea is this: In one "logical step" of the system nodes can only interact with their neighbors. If node A wants data to reach node B, which is in another clique, then A interacts with one of its neighbors A' that is closer to B. In the next step, A' can interact with one of its neighbors B', which is also a neighbor of B. In the third step, B' interacts directly with B. The only trick is to add the operations enabling these steps. A realistic system will almost certainly have these multi-step operations. However, in our approach we want to avoid operations that identify specific nodes (e.g. A and B) since we don't know how reliable they are or how they will be connected. Instead, we partition that data across different types of nodes (e.g. Type A nodes and Type B nodes) in the hope that we can always find a node of the proper type in the cloud. Please let me know if that answers your question?
Thanks
Remove this comment
Remove this thread
close