As a cloud-based PaaS provider, our technology allows full scalability when it comes to various geographic layers, data storage, and traveller numbers. With our micro-services architecture and containerised approach, we can, on demand, scale based on load.
Auto-Scaling Cloud Solution.
The average container load is set to 30%. If a higher CPU load occurs, a new container is started up within seconds. During sudden peaks, our infrastructure can increase its capacity within seconds, ensuring a consistent response rate.
Average scale-up time for our Infrastructure.
All containers are booted up in seconds
The system reacts to 2x loads within 2-4 seconds and 10x loads in 10 seconds
Due to the large safety margin applied when sizing the containers, slowdowns during the scaleup process are minimal
The Benefits of the DevOps Model.
Under a DevOps model, development and operations teams are no longer “siloed.” Sometimes, these two teams are merged into a single team where our engineers work across an entire application lifecycle, from development and test to deployment to operations, and develop a range of skills not limited to a single function.
In our DevOps models, quality assurance and security teams are tightly integrated with development and operations and throughout the application lifecycle.
Our teams use practices to automate processes that historically have been manual and slow. We use a technology stack and tooling which help us operate and evolve applications quickly and reliably. These tools also help engineers independently accomplish tasks (for example, deploying code or provisioning infrastructure) that normally would have required help from other teams, and this further increases a team’s velocity.
Some of our Practices.
Continuous integration is a software development practice which we use to regularly merge code changes into a central repository, after which automated builds and tests are run. The key goals of continuous integration are to find and address bugs quicker, improve software quality, and reduce the time it takes to validate and release new software updates.
Continuous delivery is a software development practice, which we follow,where code changes are automatically built, tested, and prepared for a release to production. It expands upon continuous integration by deploying all code changes to a testing environment and/or a production environment after the build stage. We will always have a deployment-ready build artifact that has passed through a standardised test process.
The microservices architecture is a design approach which we use to build a single application as a set of small services. Each service runs in its own process and communicates with other services through a well-defined interface using a lightweight mechanism using an HTTP-based application programming interface (API). Our Microservices are built around business capabilities; each service is scoped to a single purpose. We use different frameworks or programming languages to write microservices and deploy them independently, as a single service, or as a group of services.
Monitoring and Logging
We monitor metrics and logs to see how our application and infrastructure performance impacts the experience of our product’s end user. By capturing, categorising, and then analysing data and logs generated by applications and infrastructure, we understand how changes or updates impact users, shedding insights into the root causes of problems or unexpected changes. Active monitoring becomes increasingly important as services must be available 24/7 and as application and infrastructure update frequency increases. Creating alerts or performing real-time analysis of this data also helps us more proactively monitor these services.