Command Query Responsibility Segregation (CQRS) is an architectural pattern that segregates reads and writes of a system into two separate models. We propose and demonstrate an approach for building a RESTful API on top of CQRS systems. This approach joins HTTP semantics and resource-based style of REST APIs with distributed computing concerns such as eventual consistency and concurrency.
This article (the second in a four-part series) walks through the implementation of a hypermedia server based on the design for the class scheduling problem domain outlined in the first installment of this series. In upcoming weekly installments of the series, details of implementing hypermedia clients will be reviewed along with techniques for evolving the API safely over time.
This article (the first in a four-part series) focuses on the design of a hypermedia type, by mapping a particular problem domain to hypermedia messages, as a basis for the API.
Scalatra is a lightweight but full-featured MVC framework with a lively community and having started as a port of Sinatra it has gained capabilities such as an Atmosphere integration and Akka support. 2
Restful Objects is a public specification of a hypermedia API for domain object models. 40
"Service Design Patterns" catalogs design patterns that cover the entire lifecycle of web services. InfoQ talked to Rob Daigneau regarding various topics related to the core idea behind the book.
The number of REST APIs has grown dramatically over the last 5 years. This article details how Mule iON provides a consistent way to expose APIs, which is often a challenge amongst developers. 16
In this article Boris Lublinsky discusses architectural difference between SOA and REST and asses REST as a mechanism for SOA implementation. 60
Mulesoft recently released Mule 3, their next generation ESB platform. InfoQ caught up with Ross Mason to learn more about the product release and learn about the new features in the product offering.
.NET 4 introduces several tools which help build an application-independent SOA data repository. This article explores those tools and how they help make SOA data services flexible and unintrusive. 2
Daniel Morgan shows how to build a portal-style application with user-configurable charts assembled using Adobe Flash Builder 4 connecting to a Java RESTful API for their data.
Are transport-level reliability mechanisms like WS-ReliableMessaging really needed? Marc de Graauw asserts that business-specific logic for in-order and exactly-once processing do the job much better. 32