Cloud computing application Migration problem solving
Source: Internet
Author: User
KeywordsCloud computing Cloud computing
Currently, the vast majority of large, old, and single applications in the IT industry are not portable and must be rewritten to suit the target environment. The portability of applications has cost everyone a lot of time and money. Not surprisingly, the purpose of application migration in cloud computing is to make applications more portable in a way that is cloud computing. There are at least three things we can do: make the architecture of the application more logical, improve its portability in the cloud, develop open standards for cloud computing, and look for tools that can implement application migrations in the cloud without modification. Other applications that require special hardware support are not highly portable, and even many recently released newer applications are not portable, let alone their portability in cloud computing.
Application Architecture and cloud computing
Many cloud computing experts point to the importance of an application's architecture for the application's ability to migrate across the cloud. The right Cloud application architecture is part of the cloud computing interoperability solution, and existing applications may need to be redesigned to meet portability requirements. The key is that the architecture of the application should reduce or eliminate the difficult dependencies between the application stack and the functionality provided by the cloud services provider.
Hyperstratus CEO Bernard Golden points out that in order to exploit the flexibility of the cloud computing environment, it is important to understand which application architectures help the application run properly in the cloud, and what kinds of applications and data can be in the cloud environment, The data backup requirements and the system load are running well.
Currently, there are at least three popular cloud computing application architectures:
• Traditional application architectures, such as the three-tier architecture, can be used to stabilize load applications. This type of application does not require a schema that is variable in load.
• Synchronize the application architecture, where end user interaction is a major concern. In general, a large number of users in a short period of time the centralized use of the network applications will be greatly impacted, and the stability of the application and system adversely affected.
• Asynchronous application architecture, which basically does not support end user interaction in all batch applications of this architecture. They work on datasets, extracting and inserting data in the database. Cloud computing implements the scalability of server resources, and uses different methods to distribute long-running asynchronous work across several servers to handle load sharing.
A platform, a service (PaaS) vendor, provides tools for developing applications to provide an environment for running these applications. In order to publish an application under a PAAs platform, you must develop and deploy the application under that platform; that's how the Google Application engine works. You can only deploy application engine applications on Google services, but cloud application platforms such as Appistry Cloudio allow for internal private cloud deployments and deployments on public cloud infrastructures such as Amazon EC2.
Both the development environment and the operating environment of the application are important factors that should be taken into account when designing the application architecture. For example, if you are developing in a tenant-free, private cloud environment, can such an application work in a cloud environment where multi-tenant is prevalent? Integrating new applications with legacy applications is also a key component of application development. If the integration effort involves cloud computing providers, the difficulty will be self-evident, as cloud providers generally do not have access to infrastructure, applications, and the open channels of the integration platform.
Older applications that rely on some specific hardware-that is, those applications that require a particular type of network controller or disk-are also very troublesome. Cloud computing vendors may not consider continuing to use older hardware in their infrastructure.
In the process of application migration, you can decide to start with a cloud-computing vendor template that has a vendor-supplied operating system that typically represents the enterprise version of CentOS or Red Hat company Linux templates. You will then need to run your application on this operating system, debugging and eliminating the mismatch between the source application environment and the target environment. The real challenge is that this approach becomes an unknown process that accompanies many workarounds and changes.
As you continue to run through a series of problems and constantly solve them, you will find that you are almost rewriting the application. Hopefully you don't have to rewrite the program completely, but there's no doubt that you'll be modifying certain configurations and other key details. Then, in front of you is a completely different application. This may be good or bad, but at least you have at least two versions of the app-data center and cloud computing.
If migrating an application between the data center and the cloud (or between the clouds) results in two different versions of an application, it will be a collection of many versions of an application waiting for you. When you are debugging and encountering problems, you have to face this set of applications with many versions.
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.