DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports Events Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones AWS Cloud
by AWS Developer Relations
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones
AWS Cloud
by AWS Developer Relations
The Latest "Software Integration: The Intersection of APIs, Microservices, and Cloud-Based Systems" Trend Report
Get the report
  1. DZone
  2. Software Design and Architecture
  3. Cloud Architecture
  4. The R’s of Migration

The R’s of Migration

Here are five different ways that companies can consider for moving their data and apps to the cloud.

Moiz Arif user avatar by
Moiz Arif
·
Jan. 14, 19 · Analysis
Like (3)
Save
Tweet
Share
11.32K Views

Join the DZone community and get the full member experience.

Join For Free

There are many ways by which you can migrate your applications to the cloud. In this blog, we will go over different strategies that any company can leverage in order to migration their production workloads to the cloud.

Before the migration phase, it is essential to determine the current environment, its dependencies, types of servers and applications, licenses and much more.

The most common migration strategies found these days are as follows:

1.    Rehost 

2.    Refactor 

3.    Revise 

4.    Rebuild

5.    Replace 

Rehost

This strategy is also known as “lift and shift.” This is the most common approach when migrating applications to the cloud. This type of strategy can help achieve immediate goals set by the company. In this strategy, you do not optimize the application to work best in the cloud environment. Any company can save considerable operational costs when they go with this strategy and reap the benefits of cloud computing. However, there might be some applications which may be very complex to lift and shift and can require a specialized set of tools and software.

Refactor

This strategy is also known as “re-architecting.” With refactoring you take some time to think and re-architect your existing application to leverage the features and services offered by the cloud environments. This strategy can become an expensive option but can offer the best possible benefits of the cloud. You can re-architect your application to become highly available and scalable. This strategy can also turn out to be time-consuming since more knowledge is required about the cloud platform itself and the services offered.

Revise

This strategy is also known as “re-platforming.” In this strategy, you can move some of the application components to the cloud. A good example of this strategy is to migrate on-premise vendor based solutions to the cloud. This can also enable you to free your application of any possible vendor lock-ins and costly licensing models. The cloud services are fully managed and therefore allow you to save operational expenditures. This strategy can end up costing more money as compared to re-hosting.

Rebuild

This strategy dictates that you develop your application from scratch using all the cloud services and features while discarding any legacy components. Rebuilding requires you to have complete knowledge of the existing application processes and functionality. It also requires you to have a good grasp of the cloud services. With rebuilding, you can also leverage a microservice-based architecture. After rebuilding you end up with a completely new application with new and improved feature set and capabilities. You might also end up having a totally new application interface and design which can cause some trouble with users.

Replace

This strategy is also known as “re-purchase.” In this strategy, you completely replace your current application with some commercial software which provides similar functionality but is fully managed and supported by the software vendor. This makes sense when you have a SaaS offering available in the cloud which offers many new features. This option has the least administrative overhead and is a good value for the money spent. But like all vendor software you are exposed to limited customization and vendor lock-ins. You might also end up changing your internal business processes in order to become compatible with the offered SaaS product.

In conclusion, choosing the appropriate migration strategy is never an easy task for an organization. Deciding on the strategy cannot be made in isolation by any particular team. One has to factor in and weigh a lot of variables and options including choosing the right cloud service provider, optimizing application processes, migration strategy, costs, overheads and many more.

application Cloud

Published at DZone with permission of Moiz Arif. See the original article here.

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • Tracking Software Architecture Decisions
  • DevOps for Developers: Continuous Integration, GitHub Actions, and Sonar Cloud
  • Chaos Engineering Tutorial: Comprehensive Guide With Best Practices
  • How To Choose the Right Streaming Database

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends: