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 Jeevak Kasarkod on Feb 07, 2011
eBayOpenSource.org was launched end of January 2011 by open sourcing Turmeric. Turmeric is the code name for eBay's SOA platform technology and is licensed under the Apache Software License 2.0. eBay, after years of technological investments, reached out to the developer community to spread the benefits.
Turmeric is a comprehensive, policy-driven SOA platform that you can use to develop, deploy, secure, run and monitor SOA services and consumers. It is a Java based platform, follows the standards (SOAP, XML, JSON, XACML, etc.), and supports WSDL (SOAP style - Doc Lit wrapped mode and REST style). It supports a variety of protocols and data formats.
The platform comprises design and run time tools. Run time tools include a core runtime, policy services, monitoring subsystem and an administrator console. The repository service, eclipse developer tools and WSDL documentation tool belong to the design toolbox. One of the unique features is the option to bind locally and completely skip the overhead of serialization and deserialization.
The core component is the runtime platform for the service, the consumer and code generation components. The platform provides integration points for additional protocol processors.The server(Service Provider Framework (SPF)) and client side (Service Invocation Framework (SIF)) platforms are extensible through configuration files and customization of request and response handlers.
The repository is responsible for lifecycle and change management for service and data asset types. It is also exposed as a secure service which can be accessed by any of the supported protocols. Apart from design time discovery and governance the repository can also be utilized for run time discovery and lookups.
Runtime policy configuration of authentication, authorization and rate limiter or throttle policies are performed in the policy administration tool . These are enforced through a broker service at runtime called the PolicyEnforcement Service.
The eclipse plugins are primarily for type library creation, browsing, search and management. A type library typically stores all the java types that are automatically generated from XML schema files and the eclipse plugins. At this point dependency management and governance of types is not part of the build system and mandates the need for out of band manual processes.
eBay's advice for early adopters:
eBay said it uses the Turmeric platform internally, and warns that it is the first version of the open-source release of Turmeric, so it "might have some rough edges." Intalio is collaborating with eBay on Project Turmeric and is eBay's preferred support partner for organizations wishing to use Project Turmeric from eBayOpenSource.org with commercial support.
Introducing SQLFire: a memory-optimized, high performance SQL database
Troubleshoot Java/.NET performance while getting full visibility in production
RDBMS to NoSQL: Managing the Transition
Combining Inspections, Static Analysis, Testing to Achieve >95% Defect Removal Efficiency
VMware vFabric SQLFire - Test drive the data management system with memory speed, horizontal scalability and a familiar SQL interface
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