Technologies

We also have a vast experience in implementing complex technology solutions that nowadays are an integral part of any complex high-load project. We are ready to integrate them into your project, both as part of the cooperation in one of the six key areas described above and as a separate service.

Distributed fault-tolerant horizontally scalable clusters

Distributed fault-tolerant, horizontally scalable system which satisfy application needs and provide highly available user services.
Main components:

  • Web frontend/Load Balancer
    • Nginx
  • PHP-FPM backend/Memcached Load Balancer
    • PHP-FPM 7.x
    • php-memcached (libketama)
    • php-mysqlnd (custom developed read-write load balancer for database queries)
  • Cache engine
    • Memcached
  • Search engine
    • HAProxy Load Balancer
    • Sphinx
  • Database engine
    • MariaDB
  • Files synchronization
    • Custom solution based on csync2 utility
  • Anycast & GEO DNS
    • Amazon Route 53

Key benefits:

  • High availability - 99.99% service availability.
  • High capacity - more than 12 million unique hits per day.
  • Low latency - average response time less than 1s for geographically distributed points.
  • High performance - average application response time less than 800 ms.
  • Fault-tolerance - the cluster resources are repeatedly duplicated.
  • Horizontal scale-up - any component of a cluster can be infinitely scaled to satisfy load requirements.
  • Easy maintenance - cluster components can be switched to maintenance mode at any time without disrupting services availability.

Traffic distribution service

Highly available low latency traffic distribution service.
Main components:

  • Web frontend/Load Balancer
    • Nginx
  • Backend applications
    • Set of microservices implemented in Golang
  • In-memory database engine
    • Tarantool
  • Database engine
    • MariaDB
  • Message broker
    • RabbitMQ
  • Cloud computing
    • Amazon EC2
    • DigitalOcean
  • Geo-distributed requests
    • Amazon Route 53 Geolocation Routing
    • Amazon Route 53 Latency-based Routing

Key benefits:

  • Low latency - the requests are distributed using geolocation attribute to ensure the fastest response time.
  • Fast processing - unparalleled service performance that was developed using industry leading programming language.
  • Highest availability - in case of an availability issue, requests will be automatically transferred to the nearest region.
  • Intelligent processing - a set of self-learning algorithms for traffic manipulation.

Proactive monitoring system

Automatic collection and analysis of a comprehensive set of computers systems status metrics at any given time.
Main components:

  • Log analysis and management
    • Graylog cluster
  • Cloud based monitoring
    • DataDog
  • Geographically distributed monitoring
    • site24x7

Key benefits:

  • Early Problem Detection – software or hardware isolation that may cause issues, preventing an impact on a business processes.
  • Constant System Monitoring - active scan for issues, developing and applying reactive strategy for quick resolution.
  • Automatic Response Implementation - immediate automatic fix for predefined set of problems.

Infrastructure deployment and management

Idempotent collection of techniques and settings to manage infrastructure components.
Main components:

  • Infrastructure Management software
    • Ansible
    • Collection of techniques and settings

Key benefits:

  • Properly organized tasks - arranging application’s deployment tasks in a correct order.
  • Infrastructure Management - helps bringing separate things into a coherent whole.
  • Idempotent infrastructure - collection of techniques which helps to deploy application in different environments with the same settings.
  • Forcing best practices – this type of management requires cleaning up the processes which requires implementing the best practices.

We are using the newest technologies available on the market to provide our solutions:

Cloud computing

Cloud computing - computing-infrastructure and software model which provides an ability to build high performance low delay cloud-based or hybrid solution using the following technologies:

Geographical requests distribution

Geographical requests distribution - is a collection of solutions to provide lowest delay for an end users that are located in different geographical points.
Key technologies to build lowest delay services:

High Performance Distributed Computing

HPDC - is a parallel and/or distributed computing techniques applied to computationally intensive applications across computer networks.
Our architecture is based on these key techniques:

  • Fault-Tolerance - ensuring the highest availability.
  • Load balancing - improve the distribution of workloads across multiple computing resources.
  • Caching - store previously accessed content in the RAM which speeds up access to data and reduces pressure on a bandwidth.
  • Distributed databases - fast and reliable way of data storage and processing.
  • Intelligent programming – to provide a maximum application performance.

Our solutions developed using top technologies to work in clustered environments: