Modernizing Applications with Azure PaaS

Modernizing-_Applications_with_Azure_PaaS-2 Modernizing Applications with Azure PaaSFor organizations that rely on legacy technology, the cost of maintaining outdated software inhibits innovation and slows down the digital transformation process. Since business operations generate dependency on these legacy systems while accumulating enormous data over the years, such systems are hard to scale and complex to replace.

Migrating their legacy applications to an efficient technology ecosystem, organizations undertake app modernization as one of the key stages of their digital transformation journey. With modernization, organizations embrace efficient technology, tools and approaches, including Cloud, DevOps, and Microservices. These collectively enable organizations to become more lean, agile, and adaptable. 

A common approach to app modernization is transitioning the legacy application off the on-prem servers and rehosting/re-platforming it to a cloud platform. A Platform as a Service (PaaS) platform is one such cloud-based model that allows organizations to benefit from a pre-configured platform of essential infrastructure resources. 

In this article, we dive into the use-cases of a PaaS model, and the benefits of modernizing applications with Azure PaaS.

Modernizing Legacy Apps With Azure PaaS

A legacy on-prem framework requires enormous efforts towards provisioning and ongoing maintenance of the underlying infrastructure. In addition to this, managing a platform in-house gets immensely complex with frequent changes in compliance policies and security landscape. For mission-critical applications, ensuring a load-balanced service with distributed traffic additionally requires niche skills as well as considerable financial commitments. 

To help with this, Microsoft offers an HTTP-based Azure PaaS Service (commonly referred to as App Service) for hosting web applications, REST APIs, and mobile application backends on Windows or Linux-based environments.

With App Service, there are no administrative efforts to maintain the base infrastructure where the applications run. This provides an efficient approach to deploy an application on the cloud without worrying about provisioning, configuring, or scaling the platform. 

Azure uses an efficient Service Fabric to ensure that each application in the plan keeps running and that resources can be scaled up or down as needed. Each App Service runs on a virtual machine in a Microsoft Datacenter. By allowing users to easily set the maximum instances of VMs on which they want to run their applications, the Service Fabric then replicates the application across multiple VMs, keeps them running, and balances load across them.

Some features of Azure App Service include:

  • Support for Multiple Programming Languages and Frameworks: Organizations can deploy applications built on a wide variety of frameworks, including .Net Core, NodeJS, Java, PHP, Python, or Ruby. Azure App Service also supports Powershell and other executable scripts as background services.
  • Serverless Code Using Azure Functions: Rather than deploying applications that explicitly require extensive provisioning or management of infrastructure, organizations can run serverless code snippets at a fraction of the compute time cost.
  • App Containerization: Organizations can deploy applications in containers and leverage efficient architectures such as Microservices for enhanced scalability and performance.
  • DevOps Support: Azure allows to set up testing, staging, and production environments with continuous integration and deployment pipelines in line with DevOps practices.
  • Provides CORS support for APIs. Also supports secured authentication, push notification, and offline data sync for mobile apps.
  • In-App SQL databases for storing app data.

Benefits of Azure App Service 

Organizations can benefit from modernizing applications with Azure PaaS in the following ways:

  • High Scalability: Azure allows organizations to scale their applications up or out. With the easy to use Azure Portal, users can set up auto-scale settings based on CPU, memory, and disk utilization levels to support additional application load or stress. Additionally, the Per-App scaling feature allows organizations to allocate and set resources for mission-critical applications selectively. 
  • High Availability: Azure’s App Service SLAs guarantee high availability using the optimum resources. This benefits an organization by leveraging the ability to host its applications across multiple regions through Microsoft’s extensive global datacenter infrastructure.
  • Analytics and Actionable Insights: The Azure portal provides insightful analytics on an application’s health and performance levels. Organizations can also obtain details on the app’s response times, CPU, memory, and disk utilization levels for identifying incident root cause or performance optimization. 
  • Robust Security: App Service provides authentication support through Azure Active Directory, Google, Facebook, Twitter, or Microsoft accounts. Additionally, organizations can control network access of their apps by setting up a priority list of deny/allow IP addresses while benefitting from Azure Virtual Network subnets.
  • Multi-Platform Support: App Service supports different languages and frameworks for app development and deployment, thus allowing for various industry and application-type use cases.

Popular PaaS Use-Cases 

While there are numerous successful use-cases of the PaaS model, the following are some of the most common domains that benefit from it:

  • Datawarehouse/Business Intelligence

Using cloud-based PaaS offerings, organizations can locate insights, generate patterns and predict results to improve business decisions such as forecasting, product design, and investment profits. Due to a number of PaaS-enabled benefits, more and more organizations securely set up and manage data storage such as databases, data warehouses, and data lakes using popular PaaS platforms such as Azure SQL Data Warehouse.

  • Application Hosting

A PaaS model is often considered as an enabler to a Software as a Service (SaaS) model. As a result, for businesses that offer SaaS-based application offerings, PaaS offers an immediate, quick to launch platform of cloud services to deploy, host, run and manage cloud-based applications, APIs, and mobile backends.

  • IoT

The versatility provided by PaaS platforms shown in the range of languages, frameworks, and tools supported allows for IoT deployments and integrations. By supporting to efficiently deploy applications on the edge, organizations can benefit from modernizing applications with Azure PaaS, focusing on an IoT framework.

Summary 

Legacy applications are usually monolithic, expensive to manage and difficult to scale. Outdated software makes it challenging to adapt to new business requirements and hinders an organization’s digital transformation. Adopting a pragmatic approach to app modernization using PaaS platforms provides ways for organizations to refactor these applications for high efficiency. It also helps organizations to take advantage of cloud benefits like economies of scale and scalability.

Azure’s App Service by Microsoft is a cloud-based PaaS offering that provides a fully managed platform that offers auto-scaling, in-app SQL databases, high availability, and robust security to modernize and deploy modern applications. With a growing pattern of emerging technologies such as IoT, Stateful Applications, and Event Stream Processing, the computing paradigm is now at a completely different level than it used to be. This is why it’s critical for businesses to focus on the core application development and its growth, rather than spending efforts on redundant tasks of managing underlying platforms. 

 

To know more about how Optimus can help you migrate your legacy apps to a PaaS model, contact us today.

Microsoft Technology Summit – Open Source and Azure and the Optimus Test Harness

Ryan O’Connor presenting the Optimus Test Harness at Microsoft Tech Summit in Vancouver

It was both a pleasure and a privilege to represent Optimus at the Vancouver Microsoft Technology Summit last week.

The tech summit is one of my favourite events. It attracts a lot of people – especially those who are working individually or remotely – and gets them out to an event where they can connect and talk about what is happening with technology and hear about the latest and greatest from Microsoft.

Also, it was an opportunity for me personally to reconnect with a bunch of people I have known from my many years of delivery; people who have moved on to other companies. Vancouver is a tight technology community, with a core of folks who have worked together over the years.

I was especially delighted that Microsoft asked us to co-present, because while the name “Optimus” might be new for some, the people who work here are well known, and so it allowed me to shine a light on some of the cool things that Optimus is doing. (Thanks Microsoft).

Microsoft and Open Source

Mark Godfrey from Microsoft was talking about Open Source on Azure and sharing some pretty interesting facts. Here are some of the stats he presented:

  • 4x growth in container customers in Azure since January, all with Docker on Linux!
  • ~40% VMs in Azure run Linux today
  • 60% of Azure Marketplace Images are Linux based!

optimus-ryan-blog-1 Microsoft Technology Summit – Open Source and Azure and the Optimus Test Harness

Mark was speaking about the investment that Microsoft has made and is making in Open Source. The image above really speaks to the journey. In the middle of his presentation he was explaining that if you are using Open Source software like Linux, Optimus is a great example of how you can work with a trusted partner to test an automation framework on Azure. At that point, Mark simply asked me to join him on stage and talk about the Optimus test harness.

The Optimus Test Harness

We have been helping customers move to the cloud and do their testing in the cloud for a while now. About 85% of our customers are tech companies that offer a product or a service. Most of them have cloud-based apps and a lot of them need to do testing on those apps. Locating something inside their tenant that is closer to the services they provide but also closer to Microsoft services like machine learning makes a lot of sense.

Three Ways We Can Help
  1. Proof of Concept. We can stand up our test harness on a customer’s tenant because there’s no licence fee. This helps customers prove the concept that automated testing might add value to them.
  2. Component Testing. We might test a particular component they are struggling with; for example, all the APIs. We might just do API testing or performance testing of some specific component. In that process, we might be doing end-to-end services. We will build and execute the script as a managed service.
  3. Knowledge Transfer. Or, we might take a more educational approach or a capacity-building approach, where we help an internal team grow in its testing maturity. In doing so, we are teaching, showing and doing. Ultimately, we turn everything over to the internal QA team to manage. Quite often, we end up continuing to provide service because of the value we deliver. The organization realizes that they can free up their resources to do other things and working with us is a cost-effective approach.

Ultimately, our approach is very consultative. We look at what you really need and what services you might want to embrace. For example, we can bundle the services (such as the creation of scripts) and the test harness into a licence fee so that you can purchase it as a capital expense.

The bottom line is that we can get you set up and get you going so that you will be able to do your regression testing with the push of a button.

Getting Started

Microsoft is investing in this approach and have already invested in several PoCs for customers who want to try the test harness. Let me know if you are interested in learning more. We can also help determine if you might qualify for Microsoft funding.

Reach out anytime – we would love to work with you. – ryan.oconnor@optimusinfo.com