Welcome!

AJAX & REA Authors: Ram Sonagara, Plutora Blog, Pat Romanski, Elizabeth White, Liz McMillan

Blog Feed Post

Why Application Modernization is Necessary When You Move to the Cloud?

FutureFor decades we have been developing applications that are tightly coupled and bound to the underlying infrastructure. With the introduction of the cloud though this legacy architectures prove not only to be inefficient but also a major obstacle for you to compete successfully in the new competitive landscape.

 

Let's look at couple of reasons why application modernization is a requirement if you want to leverage cloud technologies, independent of whether those are home grown, private or public.

 

The Problem With Tightly Coupled Applications

Majority of the applications are developed with some user interaction layer, business logic and backend storage. When those are tightly coupled together your only option to scale the application is to add more hardware to the machine that currently runs this application, approach also known as vertical scaling. However there are few problems that arise:

  • Adding more CPU power and memory to the machine has certain limits that are imposed by the hardware architecture. You can invest in more advanced hardware but this increases even more your infrastructure costs (high-end hardware costs several times more than the commodity hardware used in cloud data-centers).
  • The performance of your application is determined by the slowest component in it. Thus even if the UI is super fast and is able to handle large amount of users but the business logic is slow and cannot handle the load you will be limited to the load the business logic can handle. Because the UI and the business logic are tied together you will not be able to scale just the business logic in order to handle more users. This leads to inefficient resource utilization and again higher infrastructure costs.
  • Tightly coupled applications do not normally have clearly separated tiers with defined interfaces and changes in one part of the application may have undesired impacts in another. Tasks like fixing, updating and extending it become a maintenance nightmare. The budget for supporting and maintaining such applications grows each year.

 

Here is how those things get solved in a cloud architected applications:

  • Adding CPU power and memory is trivial - it is just a matter of adding a new instance of the application (or just part of it as you can see in the next bullet point). Cloud enabled applications scale out by adding more instances of the application or the application components that work in parallel (also known as horizontal scaling).
  • The performance of the application is not anymore determined by its slowest component. Because the components of the application are clearly separated you can scale out just parts of the application (i.e. the business logic in the previous example) to match the load that the UI can handle. You have much more flexibility and granular control over the way your application scales.
  • Because the components of the application are clearly separated, changes in one component do not impact another as long as the interfaces are kept in tact. Tasks like testing fixes, updating components, improving the performance of particular tier and any other maintenance and support becomes much easier.

 

The Problem With Local Resources

Another common problem with legacy applications are the dependencies on local resources. Few examples are:

  • Dependencies on locally installed software or libraries. Such dependencies can be specialized server software, local queue implementations, client libraries used for special rendering etc. Lot of the times this software comes with additional licensing costs.
  • Reliance on the local file system. Application logging is a typical example but you can also think of other things like loading data from local files, storing data locally etc. Server failure results in data loss, which in some cases may not be acceptable.
  • Sticky sessions and storing session information locally. Every web application relies on user sessions and each web framework offers a way to manage those on the server side. However if the server fails the session is lost, which impacts the user experience.

The biggest problem with local resources is the assumption that those will be available throughout the lifetime of the application. But even the most reliable hardware can fail and when this happens everything that is stored locally will be lost. The price you will pay for lost data will significantly exceed even the most expensive hardware.

 

Cloud enabled applications solve those problems as follows:

  • Workloads that require specialized software can be deployed on a infrastructure pool that has the software preinstalled. Thus adding more customers will not require new licenses for the software.
  • Critical data as well as logs is stored in a central storage local that is regularly backed up and can even be geo-replicated. The chances of data loss in the cloud are significantly lower.
  • Sessions are stored either in a shared storage or in distributed cache and accessible from each instance of the application. Thus failure in one application instance does not impact the user experience because the next request is routed to another instance.

 

The Problem With Configurations

The last one I would like to touch on is the problem with configuration. Near all applications suffer from the  configurations problem but in legacy applications this is particularly amplified. The whole problem starts with the need to have one configuration that mangoes all components or at least the front-end and the business logic. Then over time this configuration grows and grows together with the new functionality added to the application.

 

But this is not the only issue with legacy applications configurations. The bigger issue is the settings that rely on the underlying infrastructure. This was OK when you were in control of the infrastructure and on which server the application is deployed however this approach results in increased configuration sprawl when the application needs to be moved between environments.

 

When you design your application for the cloud though you are forced to abstract the configuration from the underlying infrastructure and things like hard coded local paths, reliance on local environment variables or machine configurations have no place in your configuration files. Thus you make changes in your configuration only when new functionality is added and not when you move your code between environments (as in development, test, production)

 

Even if you are not considering immediate migration of your applications to the cloud is worth evaluating your application portfolio and estimating the effort to make it cloud-ready. It is of benefit not only for your cloud efforts but as a general strategy for the future.

Read the original blog entry...

More Stories By Toddy Mladenov

Toddy Mladenov has more than 15 years experience in software development and technology consulting at companies like Microsoft, SAP and 3Com. Currently he is a CTO of Agitare Technologies, Inc. - a boutique consulting company that specializes in Cloud Computing and Big Data Solutions. Before Agitare Tech Toddy spent few years with PaaS startup Apprenda and more than six years working on Microsft's cloud computing platform Windows Azure, Windows Client and MSN/Windows Live. During his career at Microsoft he managed different aspects of the software development process for Windows Azure and Windows Services. He also evangelized Microsoft cloud services among open source communities like PHP and Java. In the past he developed enterprise software for German's software giant SAP and several startups in Europe, and managed the technical sales for 3Com in the Balkan region.

With his broad industry experience, international background and end-user point of view Toddy has an unique approach towards technology. He believes that technology should be develop to improve people's lives and is eager to share his knowledge in topics like cloud computing, mobile and web development.

@CloudExpo Stories
"ElasticBox is an enterprise company that makes it very easy for developers and IT ops to collaborate to develop, build and deploy applications on any cloud - private, public or hybrid," stated Monish Sharma, VP of Customer Success at ElasticBox, in this SYS-CON.tv interview at DevOps Summit, held Nov 4–6, 2014, at the Santa Clara Convention Center in Santa Clara, CA.
The Internet of Things (IoT) promises to evolve the way the world does business; however, understanding how to apply it to your company can be a mystery. Most people struggle with understanding the potential business uses or tend to get caught up in the technology, resulting in solutions that fail to meet even minimum business goals. In his session at @ThingsExpo, Jesse Shiah, CEO / President / Co-Founder of AgilePoint Inc., showed what is needed to leverage the IoT to transform your business. ...
IoT is still a vague buzzword for many people. In his session at @ThingsExpo, Mike Kavis, Vice President & Principal Cloud Architect at Cloud Technology Partners, discussed the business value of IoT that goes far beyond the general public's perception that IoT is all about wearables and home consumer services. He also discussed how IoT is perceived by investors and how venture capitalist access this space. Other topics discussed were barriers to success, what is new, what is old, and what th...
Dale Kim is the Director of Industry Solutions at MapR. His background includes a variety of technical and management roles at information technology companies. While his experience includes work with relational databases, much of his career pertains to non-relational data in the areas of search, content management, and NoSQL, and includes senior roles in technical marketing, sales engineering, and support engineering. Dale holds an MBA from Santa Clara University, and a BA in Computer Science f...
The Internet of Things (IoT) is rapidly in the process of breaking from its heretofore relatively obscure enterprise applications (such as plant floor control and supply chain management) and going mainstream into the consumer space. More and more creative folks are interconnecting everyday products such as household items, mobile devices, appliances and cars, and unleashing new and imaginative scenarios. We are seeing a lot of excitement around applications in home automation, personal fitness,...
“The year of the cloud – we have no idea when it's really happening but we think it's happening now. For those technology providers like Zentera that are helping enterprises move to the cloud - it's been fun to watch," noted Mike Loftus, VP Product Management and Marketing at Zentera Systems, in this SYS-CON.tv interview at Cloud Expo, held Nov 4–6, 2014, at the Santa Clara Convention Center in Santa Clara, CA.
The Industrial Internet revolution is now underway, enabled by connected machines and billions of devices that communicate and collaborate. The massive amounts of Big Data requiring real-time analysis is flooding legacy IT systems and giving way to cloud environments that can handle the unpredictable workloads. Yet many barriers remain until we can fully realize the opportunities and benefits from the convergence of machines and devices with Big Data and the cloud, including interoperability, ...
OneCloud Software has launched the OneCloud Partner Program. Responding to demand from prospective partners, the Program offers managed service providers (MSPs) and resellers the resources they need to grow their business with the OneCloud Recovery solution. OneCloud Recovery is an automated solution for disaster recovery/business continuity (DR/BC), which leverages Amazon Web Services as the disaster recovery site. “This is a tremendous opportunity with an innovative hybrid cloud-based DR pro...
Cloud Technology Partners on Wednesday announced it has been recognized by the Modern Infrastructure Impact Awards as one of the Best Amazon Web Services (AWS) Consulting Partners. Selected by the editors of TechTarget's SearchDataCenter.com, and by votes from customers and strategic channel partners, the companies acknowledged by the Modern Infrastructure Impact Awards represent the top providers of cloud consulting services for AWS including application migration, application development, inf...
“We help people build clusters, in the classical sense of the cluster. We help people put a full stack on top of every single one of those machines. We do the full bare metal install," explained Greg Bruno, Vice President of Engineering and co-founder of StackIQ, in this SYS-CON.tv interview at 15th Cloud Expo, held Nov 4–6, 2014, at the Santa Clara Convention Center in Santa Clara, CA.
The 3rd International Internet of @ThingsExpo, co-located with the 16th International Cloud Expo - to be held June 9-11, 2015, at the Javits Center in New York City, NY - announces that its Call for Papers is now open. The Internet of Things (IoT) is the biggest idea since the creation of the Worldwide Web more than 20 years ago.
"People are a lot more knowledgeable about APIs now. There are two types of people who work with APIs - IT people who want to use APIs for something internal and the product managers who want to do something outside APIs for people to connect to them," explained Roberto Medrano, Executive Vice President at SOA Software, in this SYS-CON.tv interview at Cloud Expo, held Nov 4–6, 2014, at the Santa Clara Convention Center in Santa Clara, CA.
"Blue Box has been around for 10-11 years, and last year we launched Blue Box Cloud. We like the term 'Private Cloud as a Service' because we think that embodies what we are launching as a product - it's a managed hosted private cloud," explained Giles Frith, Vice President of Customer Operations at Blue Box, in this SYS-CON.tv interview at DevOps Summit, held Nov 4–6, 2014, at the Santa Clara Convention Center in Santa Clara, CA.
In this demo at 15th Cloud Expo, John Meza, Product Engineer at Esri, showed how Esri products hook into Hadoop cluster to allow you to do spatial analysis on the spatial data within your cluster, and he demonstrated rendering from a data center with ArcGIS Pro, a new product that has a brand new rendering engine.
Performance is the intersection of power, agility, control, and choice. If you value performance, and more specifically consistent performance, you need to look beyond simple virtualized compute. Many factors need to be considered to create a truly performant environment. In his General Session at 15th Cloud Expo, Harold Hannon, Sr. Software Architect at SoftLayer, discussed how to take advantage of a multitude of compute options and platform features to make cloud the cornerstone of your onlin...
Software Defined Storage provides many benefits for customers including agility, flexibility, faster adoption of new technology and cost effectiveness. However, for IT organizations it can be challenging and complex to build your Enterprise Grade Storage from software. In his session at Cloud Expo, Paul Turner, CMO at Cloudian, looked at the new Original Design Manufacturer (ODM) market and how it is changing the storage world. Now Software Defined Storage companies can build Enterprise grade ...
IBM and Docker, Inc. have announced a strategic partnership that enables enterprises to more efficiently, quickly and cost effectively build and run the next generation of applications on the IBM Cloud and on prem via the Docker open platform for distributed applications. Enterprises can use the combination of IBM and Docker to create and manage a new generation of portable distributed applications that are rapidly composed of discrete interoperable Docker containers, have a dynamic lifecycle, a...
Hardware will never be more valuable than on the day it hits your loading dock. Each day new servers are not deployed to production the business is losing money. While Moore's Law is typically cited to explain the exponential density growth of chips, a critical consequence of this is rapid depreciation of servers. The hardware for clustered systems (e.g., Hadoop, OpenStack) tends to be significant capital expenses. In his session at Big Data Expo, Mason Katz, CTO and co-founder of StackIQ, disc...
SYS-CON Media announced that Splunk, a provider of the leading software platform for real-time Operational Intelligence, has launched an ad campaign on Big Data Journal. Splunk software and cloud services enable organizations to search, monitor, analyze and visualize machine-generated big data coming from websites, applications, servers, networks, sensors and mobile devices. The ads focus on delivering ROI - how improved uptime delivered $6M in annual ROI, improving customer operations by minin...
The move in recent years to cloud computing services and architectures has added significant pace to the application development and deployment environment. When enterprise IT can spin up large computing instances in just minutes, developers can also design and deploy in small time frames that were unimaginable a few years ago. The consequent move toward lean, agile, and fast development leads to the need for the development and operations sides to work very closely together. Thus, DevOps become...