Architecture of a simple Mashup on the web server
All the websites over the Internet are based on a Web server that serves request of clients. The Web server is responsible for supplying Web pages to clients. In case of the simplest mashup implementation, the Web server handles all the responsibility of mashing: during the processing, the browser continues to sit and wait for the response.
- The web browser uses HTTP or HTTPS to send request for a Web page to the server.
- The Web server constructs the page by connecting to the source or partner sites, which include Google, Amazon, Yahoo, etc. In our example, Amazon gets the first request from the browser using Simple Object Access Protocol (SOAP) over HTTP.
- The web server gets the SOAP response back from Amazon.
- Our example has the second request being sent to Yahoo through REST.
- The web server receives plain old XML over HTTP from Yahoo.
- The web server now combines and rationalizes the data in the most suitable manner an sends the response back.
- The data resulting from the web server is combined in an HTML format and the response is sent back to the browser.
Advantages:
- Browser remains entirely separated from the partner sites, which are actually responding to the requests by providing data.
- The web server itself works as an aggregator and proxy for the responses.
- Developers need not worry for the support from browsers to some extended features in JavaScript like, eXtensible Stylesheet Language Transformation (XSLT) and also support for multiple versions of Dynamic HTML (DHTML)
Disadvantages:
- It involves a full page request being sent from the browser and all the data manipulation work is handled by the web server, thereby reducing scalability.
.