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 Obie Fernandez on Jun 25, 2007
Rich Kilmer is one of the Ruby world's great conversationalists and storytellers. I was lucky enough to get Rich on video at last RubyConf, and we captured a great conversation about his many success stories using Ruby. Among other things, Rich tells us about using Ruby at DARPA, the research arm of the USA's military. Also exciting to hear was how Rich has leveraged a variety of cutting-edge software and techniques such as Flash, DSLs, OWL and semantic web technologies in conjunction with Ruby.
This interview was chock-full of great highlights, of which I've selected a couple to highlight:
On using Ruby to control a system with 300 Java-based agent processes:
Chad Fowler and I over basically 2 weeks, took the Java Debug Wire Protocol specification [...] turned it into a DSL in Ruby, and used that DSL to generate the packets for sending and receiving data. So we used the DSL in Ruby as a generator to generate Ruby code, as the whole protocol and then I used that at Darpa. They were trying to say “we could freeze the agent society from within the agent society will send messages, and it took about 7-8 minutes for all the messages to propagate and everything to freeze and then go quiet. I had a Ruby process that was running all 300 VM’s were underneath it, and I could freeze it in about a half of second. All 300 of them! And you actually could watch the CPU use because we had a monitor and the CPU use has dropped to zero. And it freaked them out. And what was great was you could turn it back on, and all the agents came back on. But time had been lost. And it was like alien abduction lost time, ten minutes went away, “what happened to us?” It was a bizarre thing because they were agents and they were planning on things and all of sudden 10 minutes just went away. But it was interesting to show how Ruby could actually be used as this kind of harnesses to wrap around things like systems.
On using Ruby as "enterprise glue that doesn't set"
That’s exactly right. If you think of it as a vehicle, how many gaskets you have inside that vehicle. Because you don’t want the things rubbing against each other. But right now, because people are so against learning new languages, which is really sad, but because they are against learning new languages or getting new languages into a development environment, they want everything to be in Java, everything to be in C sharp, everything to be in whatever language they are building in, instead of saying: “let’s use different languages for different pieces of this”, which makes sense.
Watch InfoQ's exclusive interview of Rich Kilmer today.
The WebSphere Liberty Profile for Developers: An Introduction
RDBMS to NoSQL: Managing the Transition
Tools to unit test your JavaScript
In today’s hyper-competitive world, later may be too late to adopt Agile development and this Roadmap for Success will help you get started. Download "Agile Development: A Manager's Roadmap for Success" now!
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