Information Center

What are the technical and commercial advantages of cloud computing

  

In recent years, software architects have explored a number of relevant concepts for building highly scalable applications and implemented them in a best practice manner. In today's "information age", these concepts are more applicable to growing data sets, unpredictable traffic patterns, and the need for fast response time.

Building applications in the cloud has some obvious business advantages. Here are some main features:

1. The initial infrastructure investment is almost zero: if you want to build a large system, it may need a lot of investment in the computer room, physical security, hardware (rack, server, router, standby power supply), hardware management (power management, heat dissipation), and operation and maintenance personnel. Due to high upfront costs, the project usually requires multiple rounds of management approval and demonstration before even starting. Now, there is almost no fixed cost or startup cost when adopting the public cloud environment.

2. Infrastructure immediacy: In the past, if your application started to scale up on a large scale, and your system or infrastructure did not catch up on the scale, it would greatly affect the success of the application. On the contrary, if you invest a lot of money in the early stage, but the application is not popularized, your system or infrastructure will become the victim of failure. By adaptively deploying applications in the cloud environment, you don't have to worry about whether to purchase large systems in advance. This increases flexibility, reduces risk and operating costs, because you can pay as needed based on the scale of growth.

3. More efficient use of resources: System administrators often worry about the purchase of new hardware (resource depletion) and higher infrastructure utilization (resource redundancy or idleness). In the cloud environment, we can manage resources more efficiently and release resources effectively on demand according to the application request volume.

4. Calculate cost based on usage: With tool pricing, you can only pay for the used infrastructure without paying for the allocated but unused infrastructure. This adds a new dimension of cost savings. When you deploy optimization patches to update cloud applications, you can see the cost savings immediately (sometimes in advance in the next month's bill). For example, if a cache layer can reduce data requests by 70%, you can see the return in the next bill immediately. In addition, if you are building a platform on the cloud, you can also transfer this flexible and variable cost structure based on use to your customers.

5. Shorten time to market: Parallelization is an important way to speed up processing. If a computing intensive or data intensive task needs to run for 500 hours in parallel on one machine, through the cloud architecture, 500 instances can be copied and run to process the same task, and completed within one hour. A resilient infrastructure provides the ability to take advantage of the cost benefits of parallelization to shorten time to market.

On the other hand, the technical advantages of cloud computing can be summarized as follows:

1. Automation: "Scripted infrastructure": The system can be built and deployed in a reusable way by making full use of programmable (API driven) infrastructure.

2. Automatic expansion: the application can be expanded in both directions according to needs without any manual intervention. Autoscale improves automation and efficiency.

3. Active expansion: based on reasonable planning of demand expectations and traffic patterns, applications can be expanded in both directions to maintain low-cost operations.

4. More effective development cycle: It is easy to clone the development and test environment to the production system. The environment at different stages can be easily extended to production systems.

5. Improved testability: No hardware exhaustion testing is required. Injection and automated testing can continue at every stage of the development process. We can establish a preconfigured environment - "instant test lab", which is only used for testing for a period of time.

6. Disaster recovery and business continuity: Cloud services improve low-cost options for maintaining a range of DR servers and data storage. With cloud services, you can copy the environment in one place to the cloud environment in other regions in a few minutes.

7. Traffic overflow to the cloud environment: Through several clicks and effective load balancing policies, you can create a route to transfer the excess access traffic to a complete anti overflow application in the cloud environment.

Cloud computing strengthens some basic concepts of building a highly scalable Internet architecture, and introduces some new concepts to complete the construction and deployment of this variable application. Therefore, when you are in the process from conceptual design to implementation, you may feel that "everything has changed, but nothing is different". Cloud computing has changed the way of processing, mode, practice, and even philosophy, while strengthening the traditional SOA principles, which are more important than before.