Business Challenge

 

Our Client wanted to build a Video Calling and Chat application to Support users. Entirely dedicated to Free Calling Application for any mobile platform like iOS, Android to any phone number and Support call all around the globe.

  • To build an analytics platform where they can monitor the load, performance, and other metrics of their asterisk server (cloud-based calling), their chat server.

  • To Track the Users Activity in real time.

 

Solution Offered

 

Building a high performance and scalable solution using NoSQL and  Big Data

 

Basic Solution Architecture

Hardware:- From OVH dedicated server

Virtualization:- Using Vmware bare metal

All services:- on VMware Virtual Machines

 

Basic Environment Production Setup

 

All server/nodes are running on each separate Vmware virtual machine.

 

Security:  Firewall

Using Pfsense firewall as a security parameter for all outbound and inbound connections.

 

Load Balancer:  Haproxy

Using Haproxy as a load balancer for all our servers to make the running of backend servers smooth for all situations even under high load/traffic.

 

Backend Server:  Using Nginx with Nodejs API

Node.js is easily employed as a server-side proxy where it can handle a large number of simultaneous connections in a non-blocking manner.

 

Database Server: Couchbase and Mysql

Couchbase is an open-source, distributed multi-model NoSQL document-oriented database software package that is optimized for interactive applications.

 

Backend PHP Server:  Using Nginx with PHP

We used multiple PHP servers provide us High Availability.

 

Monitoring: Zabbix

Zabbix is open source and ready to use for enterprise-scale monitoring of all things like firewall, VM.

 

Mail Server

We have an internal mail cluster with more than two nodes because we want High Availability for our mail server.

 

We need to monitor Three platforms -

  • Asterisk Server Log

  • Chat Server

  • User Events  for the Mobile Application on Android and iOS

 

Different Steps involved in building Real-Time Analytics -

  • Deploying Agents

  • Data Ingestion Process

  • Data Processing - Apache Spark Streaming

  • Data Persistence - Cassandra

  • Rest API - Play Framework, Actor Model in Scala Language

  • Deploying Agents

  • Data Ingestion Process

  • Data Processing - Apache Spark Streaming

  • Data Persistence - Cassandra

  • Rest API - Play Framework, Actor Model in Scala Language

Looking For More Details

Download Now

What are you doing?

Talk to Experts for Assessment on DevOps Intelligence, Big Data Engineering and Decision Science

Reach Us

Transforming to a Data-Driven Enterprise

Get in Touch with us for Artificial Intelligence Platform and Enterprise Analytics Solution

Contact Us

Accelerate Your Big Data Deployment

Learn More