Page Status: Updated for Istanbul   
Component Status: Pending PTL updates and ArchCom Review

Last Reviewed on:

Certified by:

MSB (Micro Service Bus):

1 High Level Component Definition and Architectural Relationships 

The Microservice Bus function provides service registration, discovery and communication services for microservices as well as a gateway for internal & External communication for the services:

  • Register communication services

  • Discover communication services

  • Manage communication between microservices

OOM connects to MSB to register and update service information when it instantiates service endpoints. 

MSB and DMaaP are complementary. MSB provides the restful API service registration/discovery/routing/API gateway, which addresses the sync/rpc communication pattern in microservice architecture,  in contrast, DMaaP provides messages/file transfer, which mainly focused on the async communication pattern in microservices architecture. 

2. API definitions

2.1 MSB provides the following interfaces:

These are separate interfaces.

Interface NameInterface Definition Interface CapabilitiesAPI Spec (Swagger)
MSBE-1Registration and Discovery interface The registration and discovery interface provides the following capabilities:
  • Register/Unregister a service
  • Discover a service 
Microservice Bus API Documentation#RegisterservicetotheMicroserviceBus
MSBE-2Service Request Interfaces

Provides the capability to deliver and receive a service request and subsequent communication.|

MSB API gateway acts as a proxy between the client and the server, the client just sends the request to MSB API gateway IP+Port, MSB handles the service discovery and reliable communication with the backend service including load balancing, retries, circuit breaker, etc.
MSBE-3  MSB Admin InterfaceProvides the ability to administer policy and routing for the service requests. It's a management UI for viewing or modifying registered services, you can find it at HTTPs://MSB_API_AGATEWAY_IP:80 on your running MSB instance.

Note:   xxxI interface is a Component internal interface.  xxxxE interface is a component external interface

The current API documents can be found at:

2.2 MSB consumes the following Interfaces:

Interface NamePurpose Reason For UseAPI Spec (Swagger)

3. Component Description:

A more detailed figure and description of the component

4. known system limitations

MSB API gateway has been performance tested in this scenario:

  • Client(wrk) --> MSB API gateway --> Test service(Nginx)
  • Test machine (client, msb and test service): 8 cpu Core, 8G memory
  • Network 10000M 

The test result is 50000 request per second.

5. System Deployment Architecture

MSB consists of X containers:

6. New Capabilities in this Release

This release, MSB adds the following Capabilities:

  • According to Requirement 437 and 438 (see below), all components of MSB have to update the python and java language's version. 

    REQ-437 - Getting issue details... STATUS

    REQ-438 - Getting issue details... STATUS  

  • More details: MSB Honolulu Release Planning

7. References

  1. MSB interface specification:Microservice Bus API Documentation  
  2. Overall introduction:

  • No labels