How Not to Let Peak Loads Kill Your Software

How Not to Let Peak Loads Kill Your Software

If your company is actively growing, as well as the number of its clients, it’s quite natural that you’ve started to worry about the state and viability of your on-premises software.

Though growth is an absolutely positive tendency for any business, it brings new challenges for tech specialists. What issues you may face:

  • While loads are getting stronger, it is becoming more and more difficult for your servers to cope with them.
  • You need to ensure data security and timely software updates which can also be a troublesome task.
  • The hardware is getting older and the company needs to invest more and more money in it. Moreover, when you buy additional equipment, there can appear compatibility issues.
  • One day it may turn out that your on-premises software is not able to perform tasks at large scales quickly and efficiently.

As you understand, it’s always better to be prepared for such problems and know to how to prevent serious consequences. But what is even better is to avoid them! And we want to prove that well-planned migration to the Microsoft Azure cloud can help you to avoid such issues.

Instead of simple enumeration of Azure benefits we want to share with you some real cases from our practice.

Case 1. Lack of capacities

The U.S.-based retail company had on-premises software that was intended for sending emails, SMS and push notifications. But the client base was growing and reached the mark of 800 000 users of the company’s Android and iOS apps. With the help of the local service and internal computing capacities, it took around 3 hours to send one push-notification to all the users. It was absolutely inappropriate as when the notification reached all the users, the information may have been already outdated. To address this issue we migrated the database to the cloud adding business logic to Azure Logic App. For sending push notifications we decided to use Azure Push Notifications Hub. Now only 1-3 seconds are needed for 800 000 push notifications to reach their addressees.

Case 2. Load balancing and computing resources reservation

Here is one more example. The Zurich-based company that manufactures electronic devices had a REST server that was stored on a traditional hosting (earlier, it used to be kept on-premises within the enterprise’s network). During peak loads, it was incapable to cope with the request flow. The client tried to use the network of servers, to balance the request flows but there weren’t any positive results. Some solutions were too expensive as they presupposed the necessity to purchase new equipment and to hire new specialists who will ensure its correct functioning. All this requires additional expenses and efforts.

We conducted the system audit and moved the REST Server to Azure Function App where Azure Load Balancer was used. We configured the Function App according to the regions for quicker access and reservation, set up the database reservation. As a result, the time needed for maintenance and service works in the system was reduced from 120 hours per month to 16. But what’s more, we managed to eliminate a very important reputational risk. The stability of the system work was increased. It resulted in the falling outflow of users.

Case 3. Security

One more issue is security. Our another client from Germany has a system for managing IoT devices to control passenger and freight automobile transport. The system has a lot of open input points as well as a direct connection with a database, REST API, various open webhooks, etc. With a time flow, the clients’ system was included in various hacker databases. The number of attempts to hack the system started growing. Gigabytes of clients’ confidential information was under a serious threat. And even for protected systems, it is practically impossible to predict which is the weakest point. As a result, it was decided to migrate the entire environment to the Azure cloud which allowed to move all the risks on the developer of Azure (and of course, it is quite logical that the software developer knows how to set up and use his software better than its users). Though the migration to the cloud can’t minimize the number of attacks, at least our client could stop worrying about possible mistakes on his side. DDoS attacks were prevented as well.

Of course, it’s only a couple of examples. And we understand that you may have a completely different story. But it doesn't mean that you can’t enjoy all the advantages that the Azure product can offer us today.

Here is a checklist of benefits that you may get if you opt for timely migration to the Azure cloud:

  1. reduction of software maintenance and service costs (our practice shows that the amounts can be easily reduced by 2 times);
  2. increase of software efficiency and productivity;
  3. elimination of risks related to the protection of users’ data;
  4. the possibility to scale computing and other resources when loads are growing or decreasing;
  5. flexibility in adding new services and functionalities (like Push Notification, IoT solutions with MQTT and Websocket, etc.).

In case you want to get more information before making a decision about the migration, we can offer you a free analysis of your software.

Our experts will provide you with an approximate cost and time frames for software migration and reengineering as well as with a full list of outcomes. So, you will see what real potential your software has and what results you may achieve after migration to the Microsoft Azure Cloud.

We will be always happy to find the best solutions for your system efficiency and productivity.

Learn more about our Microsoft Azure migration services

Looking for Cloud migration services provider?
Contact us. We’ll help