Feeds

Day of REST approaches for the cloud

It's a style thing

HP ProLiant Gen8: Integrated lifecycle automation

Comment The term REST keeps on popping up when vendors and analysts talk about cloud storage. We're told that RESTful interfaces are more advanced than traditional filer interfaces such as NFS or CIFS. What is REST all about? Let's take a fairly simplistic look at REST, cast an eye in the direction of its advantages over the traditional NAS protocols, and try an overview comparison with Microsoft's SOAP protocol.

REST stands for REpresentational State Transfer and the term was introduced in a University of California at Irvine doctoral thesis by computer scientist Roy Fielding in 2000. The document's abstract states: "REST emphasizes scalability of component interactions, generality of interfaces, independent deployment of components, and intermediary components to reduce interaction latency, enforce security, and encapsulate legacy systems."

Fielding has been involved with authoring Internet standards for HTTP and URIs (Uniform resource Indicators) and his work has received a lot of attention.

His paper charts the development of the REST idea from an initial client-server architecture which decouples client systems from servers and enables clients to talk to different servers and evolve separately from them. This interface became stateless in the sense that servers received requests and had no need to be aware of the situation or state behind the request. They just blindly serve it, with no stored context, and leave the responsibility for maintaining state with the client. Servers don't have to store state between requests and can be more efficient with their resources.

Fielding then says we add a visible cache constraint, with data coming from servers being labelled as cacheable or non-cacheable. Cacheable data can be re-used by client systems for subsequent requests by their users or applications, thus avoiding server access latency. Fielding says that this client-cache-stateless-server architecture was that used by the early world-wide web.

He adds a constraint that there must be a uniform interface between components and this becomes a central feature of REST. He states: "Implementations are decoupled from the services they provide, which encourages independent evolvability." This degrades efficiency as information is transferred in a standard form and not in forms suited to individual applications. REST is designed: "to be efficient for large-grain hypermedia data transfer, optimizing for the common case of the Web, but resulting in an interface that is not optimal for other forms of architectural interaction."

He goes on to define REST by four interface constraints: "identification of resources; manipulation of resources through representations; self-descriptive messages; and, hypermedia as the engine of application state." He then adds: "layered system constraints... the layered system style allows an architecture to be composed of hierarchical layers by constraining component behavior such that each component cannot "see" beyond the immediate layer with which they are interacting."

The benefit of this is that: "Within REST, intermediary components can actively transform the content of messages because the messages are self-descriptive and their semantics are visible to intermediaries."

Finally: "REST allows client functionality to be extended by downloading and executing code in the form of applets or scripts." In summary he says: "REST... gains the separation of concerns of the client-server style without the server scalability problem, allows information hiding through a generic interface to enable encapsulation and evolution of services, and provides for a diverse set of functionality through downloadable feature-engines."

Reducing security risks from open source software

Next page: SOAP and REST

More from The Register

next story
Sysadmin Day 2014: Quick, there's still time to get the beers in
He walked over the broken glass, killed the thugs... and er... reconnected the cables*
SHOCK and AWS: The fall of Amazon's deflationary cloud
Just as Jeff Bezos did to books and CDs, Amazon's rivals are now doing to it
Amazon Reveals One Weird Trick: A Loss On Almost $20bn In Sales
Investors really hate it: Share price plunge as growth SLOWS in key AWS division
US judge: YES, cops or feds so can slurp an ENTIRE Gmail account
Crooks don't have folders labelled 'drug records', opines NY beak
Auntie remains MYSTIFIED by that weekend BBC iPlayer and website outage
Still doing 'forensics' on the caching layer – Beeb digi wonk
BlackBerry: Toss the server, mate... BES is in the CLOUD now
BlackBerry Enterprise Services takes aim at SMEs - but there's a catch
The triumph of VVOL: Everyone's jumping into bed with VMware
'Bandwagon'? Yes, we're on it and so what, say big dogs
Carbon tax repeal won't see data centre operators cut prices
Rackspace says electricity isn't a major cost, Equinix promises 'no levy'
prev story

Whitepapers

Designing a Defense for Mobile Applications
Learn about the various considerations for defending mobile applications - from the application architecture itself to the myriad testing technologies.
Implementing global e-invoicing with guaranteed legal certainty
Explaining the role local tax compliance plays in successful supply chain management and e-business and how leading global brands are addressing this.
Top 8 considerations to enable and simplify mobility
In this whitepaper learn how to successfully add mobile capabilities simply and cost effectively.
Seven Steps to Software Security
Seven practical steps you can begin to take today to secure your applications and prevent the damages a successful cyber-attack can cause.
Boost IT visibility and business value
How building a great service catalog relieves pressure points and demonstrates the value of IT service management.