|By Toddy Mladenov||
|May 29, 2013 03:55 PM EDT||
For 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.
Overgrown applications have given way to modular applications, driven by the need to break larger problems into smaller problems. Similarly large monolithic development processes have been forced to be broken into smaller agile development cycles. Looking at trends in software development, microservices architectures meet the same demands. Additional benefits of microservices architectures are compartmentalization and a limited impact of service failure versus a complete software malfunction....
Oct. 13, 2015 02:15 PM EDT Reads: 354
DevOps and Continuous Delivery software provider XebiaLabs has announced it has been selected to join the Amazon Web Services (AWS) DevOps Competency partner program. The program is designed to highlight software vendors like XebiaLabs who have demonstrated technical expertise and proven customer success in DevOps and specialized solution areas like Continuous Delivery. DevOps Competency Partners provide solutions to, or have deep experience working with AWS users and other businesses to help t...
Oct. 13, 2015 02:00 PM EDT Reads: 294
SYS-CON Events announced today the Containers & Microservices Bootcamp, being held November 3-4, 2015, in conjunction with 17th Cloud Expo, @ThingsExpo, and @DevOpsSummit at the Santa Clara Convention Center in Santa Clara, CA. This is your chance to get started with the latest technology in the industry. Combined with real-world scenarios and use cases, the Containers and Microservices Bootcamp, led by Janakiram MSV, a Microsoft Regional Director, will include presentations as well as hands-on...
Oct. 13, 2015 02:00 PM EDT Reads: 192
The last decade was about virtual machines, but the next one is about containers. Containers enable a service to run on any host at any time. Traditional tools are starting to show cracks because they were not designed for this level of application portability. Now is the time to look at new ways to deploy and manage applications at scale. In his session at @DevOpsSummit, Brian “Redbeard” Harrington, a principal architect at CoreOS, will examine how CoreOS helps teams run in production. Attende...
Oct. 13, 2015 02:00 PM EDT Reads: 1,338
DevOps Summit, taking place at the Santa Clara Convention Center in Santa Clara, CA, and Javits Center in New York City, is co-located with 17th Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The widespread success of cloud computing is driving the DevOps revolution in enterprise IT. Now as never before, development teams must communicate and collaborate in a dynamic, 24/7/365 environment. There is no time to wait...
Oct. 13, 2015 01:45 PM EDT Reads: 183
As operational failure becomes more acceptable to discuss within the software industry, the necessity for holding constructive, actionable postmortems increases. But most of what we know about postmortems from "pop culture" isn't actually relevant for the software systems we work on and within. In his session at DevOps Summit, J. Paul Reed will look at postmortem pitfalls, techniques, and tools you'll be able to take back to your own environment so they will be able to lay the foundations for h...
Oct. 13, 2015 01:45 PM EDT Reads: 216
SYS-CON Events announced today that Super Micro Computer, Inc., a global leader in high-performance, high-efficiency server, storage technology and green computing, will exhibit at the 17th International Cloud Expo®, which will take place on November 3–5, 2015, at the Santa Clara Convention Center in Santa Clara, CA. Supermicro (NASDAQ: SMCI), the leading innovator in high-performance, high-efficiency server technology is a premier provider of advanced server Building Block Solutions® for Data ...
Oct. 13, 2015 01:45 PM EDT Reads: 220
With major technology companies and startups seriously embracing IoT strategies, now is the perfect time to attend @ThingsExpo in Silicon Valley. Learn what is going on, contribute to the discussions, and ensure that your enterprise is as "IoT-Ready" as it can be! Internet of @ThingsExpo, taking place Nov 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 17th Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading in...
Oct. 13, 2015 01:00 PM EDT Reads: 211
The Internet of Things (IoT) is growing rapidly by extending current technologies, products and networks. By 2020, Cisco estimates there will be 50 billion connected devices. Gartner has forecast revenues of over $300 billion, just to IoT suppliers. Now is the time to figure out how you’ll make money – not just create innovative products. With hundreds of new products and companies jumping into the IoT fray every month, there’s no shortage of innovation. Despite this, McKinsey/VisionMobile data...
Oct. 13, 2015 01:00 PM EDT Reads: 342
Containers are all the rage among developers and web companies, but they also represent two very substantial benefits to larger organizations. First, they have the potential to dramatically accelerate the application lifecycle from software builds and testing to deployment and upgrades. Second they represent the first truly hybrid-approach to consuming infrastructure, allowing organizations to run the same workloads on any cloud, virtual machine or physical server. Together, they represent a ver...
Oct. 13, 2015 12:45 PM EDT Reads: 239
As a company adopts a DevOps approach to software development, what are key things that both the Dev and Ops side of the business must keep in mind to ensure effective continuous delivery? In his session at DevOps Summit, Mark Hydar, Head of DevOps, Ericsson TV Platforms, will share best practices and provide helpful tips for Ops teams to adopt an open line of communication with the development side of the house to ensure success between the two sides.
Oct. 13, 2015 12:00 PM EDT Reads: 693
The enterprise is being consumerized, and the consumer is being enterprised. Moore's Law does not matter anymore, the future belongs to business virtualization powered by invisible service architecture, powered by hyperscale and hyperconvergence, and facilitated by vertical streaming and horizontal scaling and consolidation. Both buyers and sellers want instant results, and from paperwork to paperless to mindless is the ultimate goal for any seamless transaction. The sweetest sweet spot in innov...
Oct. 13, 2015 12:00 PM EDT Reads: 310
The IoT is upon us, but today’s databases, built on 30-year-old math, require multiple platforms to create a single solution. Data demands of the IoT require Big Data systems that can handle ingest, transactions and analytics concurrently adapting to varied situations as they occur, with speed at scale. In his session at @ThingsExpo, Chad Jones, chief strategy officer at Deep Information Sciences, will look differently at IoT data so enterprises can fully leverage their IoT potential. He’ll sha...
Oct. 13, 2015 12:00 PM EDT Reads: 746
Developing software for the Internet of Things (IoT) comes with its own set of challenges. Security, privacy, and unified standards are a few key issues. In addition, each IoT product is comprised of at least three separate application components: the software embedded in the device, the backend big-data service, and the mobile application for the end user's controls. Each component is developed by a different team, using different technologies and practices, and deployed to a different stack/...
Oct. 13, 2015 12:00 PM EDT Reads: 411
Containers have changed the mind of IT in DevOps. They enable developers to work with dev, test, stage and production environments identically. Containers provide the right abstraction for microservices and many cloud platforms have integrated them into deployment pipelines. DevOps and Containers together help companies to achieve their business goals faster and more effectively.
Oct. 13, 2015 12:00 PM EDT Reads: 296
Today air travel is a minefield of delays, hassles and customer disappointment. Airlines struggle to revitalize the experience. GE and M2Mi will demonstrate practical examples of how IoT solutions are helping airlines bring back personalization, reduce trip time and improve reliability. In their session at @ThingsExpo, Shyam Varan Nath, Principal Architect with GE, and Dr. Sarah Cooper, M2Mi's VP Business Development and Engineering, will explore the IoT cloud-based platform technologies driv...
Oct. 13, 2015 11:00 AM EDT Reads: 305
The Internet of Everything is re-shaping technology trends–moving away from “request/response” architecture to an “always-on” Streaming Web where data is in constant motion and secure, reliable communication is an absolute necessity. As more and more THINGS go online, the challenges that developers will need to address will only increase exponentially. In his session at @ThingsExpo, Todd Greene, Founder & CEO of PubNub, will explore the current state of IoT connectivity and review key trends an...
Oct. 13, 2015 11:00 AM EDT Reads: 318
SYS-CON Events announced today that Sandy Carter, IBM General Manager Cloud Ecosystem and Developers, and a Social Business Evangelist, will keynote at the 17th International Cloud Expo®, which will take place on November 3–5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.
Oct. 13, 2015 10:00 AM EDT Reads: 250
SYS-CON Events announced today that DataClear Inc. will exhibit at the 17th International Cloud Expo®, which will take place on November 3–5, 2015, at the Santa Clara Convention Center in Santa Clara, CA. The DataClear ‘BlackBox’ is the only solution that moves your PC, browsing and data out of the United States and away from prying (and spying) eyes. Its solution automatically builds you a clean, on-demand, virus free, new virtual cloud based PC outside of the United States, and wipes it clean...
Oct. 13, 2015 09:00 AM EDT Reads: 657
SYS-CON Events announced today that Machkey International Company will exhibit at the 17th International Cloud Expo®, which will take place on November 3–5, 2015, at the Santa Clara Convention Center in Santa Clara, CA. Machkey provides advanced connectivity solutions for just about everyone. Businesses or individuals, Machkey is dedicated to provide high-quality and cost-effective products to meet all your needs.
Oct. 13, 2015 09:00 AM EDT Reads: 458