Client
DineroMail is an online e-payments service, leader in Argentina, Mexico, Brasil, Chile and Colombia.
Approach
We worked closely with their designers and content managers to completely re-design their web page. After the success of the deployment of the new site we provided a detailed performance report on the back end service, followed by a complete rearchitecture and reimplementation of the platform.
Results
Website
DineroMail’s web page, with specialized contents for different countries, offered over fifty pages with information on the provided services, the benefits for sellers, the advertised solutions, frequent questions, etc.
After the user logged in, they could access all kinds of information regarding their account, modify personal information, view a detailed log of their purchases. The website, developed in ASP NET MVC, interacted heavily with a web service that provided information on available solutions, payments, user data, and more.
All content was available in English, Spanish and Portuguese, using the gettext-cs-utils library developed at Manas, for a simple Gettext approach to i18n, which is much more scalable than the traditional resources-based solution.
Architecture
The first stage consisted in detecting potential bottlenecks on the system on the event of a large number of concurrent transactions. By using JMeter for stress testing, SQL Server Profiler for analyzing database access, and JetBrains dotTrace for obtaining detailed traces of the code, we could isolate specific issues that affected performance in this scenario. The deliverable was a report covering all these findings, and suggesting further courses of action.
After this research, our architects started working closely with DineroMail to re-design the whole system’s architecture, in an ambitious project to re-write the whole platform for supporting the large user base that was growing larger by the day.
The result was a new modular architecture, designed to support a large number of concurrent users, as well as usage peaks that were common to the system, and could be developed one module at a time. The implementation was carried out iteratively with constant feedback from DineroMail’s engineers, and by the end we were proudly reporting a 10x performance improvement with the new modules.