The core of cloud computing in my understanding

The core of cloud computing is the infrastructure. Cloud server farms, cloud storage, cloud database and message queues. And then, for traditional applications to run on the cloud, they should be implemented stateless (all data, including session data, should be stored in the database backend, rather than in the application memory; the user should be able to switch between different application instances from request to request without leading into any incorrect results). Better, they are implemented in the form of microservices, making it easier to scale. For IT professionals to easily manage a lot of services and microservices, they should use containers, such as Docker, which is standardized in regards of deployment, and safeguarded by isolation. Database tables should be sharded to gain high scalability. Database management systems should support multimaster transaction (rather than the less scalable master-slave model), while in most of the time they perform in READ COMMITTED transaction isolation level (rather than the slow but secure SERIALIZABLE isolation level, which is important for certain transactions such as purchasing) for most applications. A paxos model for cloud management services should be used to avoid single-point failures.
 
On the other hand, big data and AI can also benefit from cloud computing. However, sometimes high capacity computers (high memory capacity and many cores) are still needed.
 
So to our application developers, what we concern most is stateless applications and database transaction control, plus HTTP requests/ SOAP/ AJAX to external services.

你可能感兴趣的:(软件应用)