Overview

This guide gives and overview of the core concepts of a Fruster application.

Message bus

The message bus handles services discovery and transportation of messages between services. In fruster nats.io is used as message bus.

Fruster bus

Is a helper library that developers uses to interact with the message bus in a "fruster way".

Subject

Subject is the address that a service subscribes to. It can be a specific subject or include wild cards. In Fruster, a HTTP requests method and path is translated into to subject, so for example GET /car/123 is posted on bus to subject http.get.car.123.

Schemas

JSON schemas are used to define I/O to and from each service. It is also used to automatically generate documentation of all endpoints within the application.

Handlers

Handlers are classes or functions that handles a incoming request that is received via a subscribe and in most cases returns a response back.

API Gateway

The API Gateway is a core service that translates incoming JSON HTTP requests into bus messages.