Improving Maintenance and Scalability of an E-commerce Platform
A provider of e-commerce solutions turned to Altoros to scale its online store and migrate to a new technology stack for better maintenance.
Summary
Brief results of the collaboration:
- The system was smoothly moved to Microsoft Azure with near-zero downtime.
- The new microservices-based architecture simplified future maintenance.
- The updated solution—already used by 600+ online stores and thousands of users—can now be delivered to a broader market, increasing customer’s revenues.
The customer
The customer is a Norwegian service provider of e-commerce solutions for fashion and retail business. The company delivers an easily customized system that enables to manage business processes and monitor workflows of brick-and-mortar stores. Via web access, the app enables users to manage and monitor shop inventory, supply of goods, etc.
The need
When Altoros joined the project, the customer’s e-commerce system was already used by 600+ online stores and thousands of users across Norway. However, the customer aimed at advancing further into the European market and wanted the app to sustain higher loads.
The decision was made to move to a completely different technology stack that would ensure high availability and easier maintenance. So, the company turned to Altoros for assistance and expertise in cloud technologies.
The challenges
Under the project, the team at Altoros had to address the following issues:
- Migration to a new technology stack should have been done with zero or near-zero downtime.
- The customer wanted to introduce the new system to a test group of users first, improve the preview version according to their feedback, and then migrate the rest of accounts and products. So, the legacy database should provide access for the old system, the new app, as well as for existing SDK and mobile API.
The solution
To enable easy maintenance, engineers at Altoros suggested implementing the app as a set of independent event-driven microservices. Since the customer has chosen Microsoft Azure as a platform of choice, engineers at Altoros binded the microservices and ensured load balancing with Azure Service Fabric. (This technology allows for launching a few VMs in parallel and efficiently distributing the load.)
Meanwhile, the team had to cope with certain challenges imposed by Azure Service Fabric. While the technology was still in beta at that time, our developers had to be aware of all the updates in new releases and make changes accordingly.
As Azure Service Fabric required at least five virtual machines, experts at Altoros also created a stub that enabled them to launch the system locally to save resources.
When working on a data access layer, the team utilized Entity Framework and Dapper. The Entity Framework enhanced the execution of CRUD operations, while Dapper was responsible for stable performance at high loads.
The system’s back end was designed as a REST API to save time on future development of a mobile version.
To make the app fit for different markets, developers at Altoros also enabled localization.
The outcome
Partnering with Altoros, the customer significantly improved its e-commerce solution with near-zero downtime.
With a microservices-based architecture, the system is now easy to maintain, as any module can be updated independently. Migrated to the Azure stack, the app became more scalable; the product pages are now loaded several times faster.
Delivered to the needs of 600+ online stores and thousands of users, the updated solution can now be offered to a broader market, increasing customer revenues.