Cloud Foundry: Design and Architecture
Derek Collison discusses the goals, the design premises and patterns employed in creating the architecture of Cloud Foundry, VMware’s open source PaaS, unveiling internal architectural details.
The content has been bookmarked!
There was an error bookmarking this content! Please retry.
Posted by Jonathan Allen on Mar 07, 2008
A mashup is loosely defined as a web application that combines data and functionality from multiple sources. This is usually done in the browser itself using JavaScript and possibly AJAX techniques. While they have been reasonably successful, mashups generally require planning on part of the site operator.
Microsoft is creating a new way to write mashup-like functionality with what they call "Activities". Rather than being defined within a specific page, users can launch the same set of Activities regardless of what page they are on.
Activities are created by creating an XML file that follows the OpenService Format Specification. This file specifies when the activity can be triggered, what the preview of the activity looks like, and what happens when the activity is run.
The most common activities are probably going to be selection based. The user would select a block of text and then click on an icon to see a list of activities. As the user hovers over each menu item, a preview would appear. Clicking on an item launches that activity, passing in the selected text.
The generation of the preview and the execution of the action are specified in the XML file mentioned above. Both support a small but reasonably comprehensive collection of parameters such as {selection}, {documentUrl}, and {documentTitle}. In addition, the calls can be done as either a "get" or a "post". Previews have the additional limitations of fitting in a 320 by 240 box and being in HTML.
Microsoft is being much more generous with the licensing of the OpenService Format Specification than one would expect. Rather than making it an ECMA specification or restricting it to one of their licenses, they are releasing it under a Creative Commons Attribution-Share Alike License.
For the OpenService Format and WebSlice Format specs, we’re using two separate Creative Commons vehicles to allow developers to freely use and build on our work. We’re licensing our copyright in the OpenService Format Specification under the Creative Commons Attribution-Share Alike License. This license lets others copy, distribute, modify and build upon the specification, even for commercial uses, as long as they simply give credit to Microsoft and license their own changes under the same terms. This license is also consistent with the license adopted by the OpenSearch community, whose work relates to the OpenService Format spec.
Since patents are always a concern, Microsoft made it clear they were releasing any rights to those as well.
Microsoft has developed the Open Specification Promise (“OSP”) to provide a simple and clear patent promise to reassure the broad audience of developers and customers that a given specification can be used for free, easily, now and forever. The OSP was developed with feedback from customers and the open source community, and we’re happy to be making both the OpenService Format and WebSlice Format specifications available under the OSP. The use of the OSP confirms that that these two specifications can be implemented for free. Please refer to this page for complete information and details concerning the OSP.
Automating Error Reporting for .NET Applications
Troubleshoot Java/.NET performance while getting full visibility in production
Visual Studio vNext: ALM features for Agile Planning, Team Collaboration
Want to know how software releases can be stress-free and happen with one click? Try Go free!
Improving Software Delivery Cycles: Pre-requisites and Inhibitors
Go: Agile Release Management Solutions. Go enables predictable, defect-free and timely software releases.
Derek Collison discusses the goals, the design premises and patterns employed in creating the architecture of Cloud Foundry, VMware’s open source PaaS, unveiling internal architectural details.
Andrew Watson talks about the work of the OMG, where CORBA is alive and well (hint: in your car), UML and UML Profiles vs. custom Modeling languages, DDS and other middleware, and much more.
Sohil Shah discusses creating iPhone and Android enterprise mobile applications based on cloud services using the open source platform OpenMobster.
Paul Sanford presents the transformations supported by data throughout its life cycle, and how that can be better done with Splunk, an engine for monitoring and analyzing machine-generated data.
A common “best practice” for unit tests is to only write a one assertion in each test. I intend to question this advice by showing that multiple assertions per test are both necessary and beneficial.
John Rauser presents the architectural and technological evolution of Amazon retail websites starting with 1994 and ending with adopting Amazon Web Services.
Michael Stal discusses system architecture quality, how to avoid architectural erosion, how to deal with refactoring, and design principles for architecture evolution.
Every developer has had to integrate with another system, API or component. Tis article provides strategies to handle the change and for he separating system boundaries.
No comments
Watch Thread Reply