CONTACT

The Client

The client is a Europe based multi national company with focus on Marine, Energy and Transport sectors. They have developed an IIOT solution focussed on fleet performance management. The application collects data through sensors and other data collectors onboard and transmits it to the cloud based application where it is analysed.

Service Offerings

Services

Architecture Design
Backend Development
Frontend Development
DevOps
Quality Assurance

Tech Stack Used

Python (Django)

Azure functions

Angular 10

Cosmos DB (SQL & Mongo)

Azure Blob storage

Azure Queue Storage

Rabbit MQ

Azure

Redis

Problem Statement

  • The current application faced issues during scaling due to over and under provisioning of resources. 
  • Running the existing application increased operational costs.
  • The application had functions that were triggered by external events and hence did not need dedicated hosting.

Solution

After evaluating their application and the problem statement, we recommended migrating from IaaS to FaaS via serverless architecture using Azure Functions. Serverless architecture was ideally suited for their use case which was event driven.

Architecture

The process of consuming a serverless function is described below:

  • Cloud service provider detects an incoming event.
  • A container will be created for running the target function.
  • The event will be routed to this container once it is enabled.
  • The target function will then process the event.
  • Finally the container will be terminated.

Challenges

While Serverless computing is an attractive proposition, it presents new challenges.

  • Developers need to quickly learn and adapt to work with new tools specific to FaaS development and deployment.
  • FaaS is relatively new and presents the possible risk of vendor lock-in.
  • Unlike the container ecosystem where we have extensive tools for monitoring and analysis of containers, serverless runtime is managed by the provider and we rely on the capabilities of the platform.

Result

  • Serverless computing architecture allows for far more granular scaling and therefore optimizes resource utilization
  • Inherent fault tolerance, effortless parallelisation of computing and the composition of various serverless functions to create business value through workflows
  • Servers are fully abstracted. Scaling is event driven, not resource driven.
  • Trigger based executions – supports various triggers
  • Pay only for what you use
  • Deployment is effortless.
  • Easy Integration with Other Azure services

How can we help you?

Get in touch with us to schedule a consultation