RESTful web service architecture

A RESTful web service offers better performance due to its lightweight architecture. It allows different messaging formats such as JSON, plaintext, HTML, and XML, compared to SOAP, which only allows XML. REST is an architecture style that defines the standard for loosely coupled application design using the HTTP protocol for data transmission.

JavaScript Object Notation (JSON) is a more accessible format for data exchange in REST architecture. JSON is lightweight and language independent. JSON contains a simple key-value pair that makes it compatible with data structures defined in most programming languages.

REST focuses on the design principle for creating a stateless service. The web service client doesn't need to generate a complex client skeleton, but it can access the web server resources using the unique Uniform Resource Identifier (URI). The client can access RESTful resources with the HTTP protocol and perform standard operations such as GET, PUT, DELETE, and POST on the resources.

Your choice of architecture design between REST and SOAP depends upon your organization's needs. The REST service offers an effective way to integrate with lightweight clients such as smartphones, while SOAP provides high security and is suitable for complex transactions. Let's take a look at the differences between REST and SOAP:

Attributes

REST

SOAP

Design

Architectural style with an informal guideline 

Predefined rules with a standard protocol

Message Format

JSON, YAML, XML, HTML, plaintext, and CSV

XML

Protocol

HTTP

HTTP, SMTP, and UPD

Session State

Default stateless

Default stateful

Security

HTTPS and SSL

Web Services Security and ACID compliance

 

Cache

Cached API calls

Cannot cache API calls

Performance

Fast with fewer resources

Needs more bandwidth and compute power

 

Now, let's learn about a reference architecture based on service-oriented design.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.223.106.232