Chapter 2. A basic shopping cart microservice
This chapter covers
- A nearly complete implementation of the Shopping Cart microservice
- Creating HTTP endpoints with Nancy
- Implementing a request from one microservice to another
- Implementing a simple event feed for a microservice with Nancy
In chapter 1, we looked at how microservices work and how they can be characterized. You also set up a simple technology stack—C#/Nancy/OWIN—that lets you create microservices easily, and you saw a basic Shopping Cart microservice. In this chapter, you’ll implement four main parts of this microservice using Nancy:
- A basic HTTP-based API allowing clients to retrieve a cart, delete it, and add items to it. Each of these methods will be visible as an HTTP endpoint, such as http://myservice/add/{item_number}.
- A call from one service to another for more information. In this case, the Shopping Cart microservice will ask the Product Catalog microservice for pricing information based on the item_number of the item being added to the cart.
- An event feed that the service will use to publish events to the rest of the system. By creating an event feed for the shopping cart, you’ll make it possible for other services (such as the recommendation engine) to update their own data and improve their capabilities.
- The domain logic for implementing the behavior of the shopping cart.