Internet Booking Engine (Middleware)

Challenge

  • Shielding the front-end UX builders from having to deal with
    • managing the state required to compose a complex booking
    • complexities of the back-end reservation system components
    • back end system outages
  • Shielding the back end from bursts of high traffic on the booking front end.

Solution

We developed a middleware solution with several decoupled components. Decoupling is ensured by using the Azure Service Bus and components that send data from on-premise to SalesForce were built on .NET Core and are running inside a Linux Docker container (thus they can basically run anywhere with a minimum amount of resources). The data conversion was archived by using Azure Functions and this scenario was also a perfect match for the Azure API Management service that was used to handle securely the calls to the SalesForce API to insert data and receive new/updated data. The solution can handle at this point thousands of messages per minute and it currently exceeds by far the actual needs for performance.