I am just reading Fielding's Dissertation and have a question about Chapter 5 where he introduces REST. In 5.1.5, he writes about trade-offs that come with the decision to enforce uniform interfaces. To quote:
The central feature that distinguishes the REST architectural style from other network-based styles is its emphasis on a uniform interface between components.
...
The REST interface 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 does not go into detail what is meant with "large-grain hypermedia data transfer ... the common case of the web".
I was under the impression that requests in the web are in comparison quite small. Today, typical web sites make about 100 requests per page and transfer about 2,300K (source: talk from Feb 2016).
I think, his argumentation has to be understand in the context of the time when he wrote the dissertation (around 2000). Could be that the bandwith was so small back than that a request for an image was considered rather larger. Not sure, I could also be just missing the point.
Questions:
- What is meant by large-grain hypermedia data transfer?
- In what sense is it the common case of the Web? Are not small data transfers more typical in the Web?
Today, typical web sites make about 100 requests per page and transfer about 2,300K
-- An abomination, really. Compare with this specific page, which makes 40 requests (16 of which are cached) totalling roughly 37K.