According to von Neumann's computer architecture, computers include input, output, storage, calculation and control five parts, although the computer has been developed very well, but in the architecture, there is no more than von Neumann of this structure, at least, we can still use this system thinking to think about the computer, whether he is parallel, or string Yes, it's a complex instruction, a simple instruction, and so on. This architecture is also very much in line with the essential steps and content of our human production activities (cognition, processing (including control), preservation, application). For example, the factory, the input is the raw material, output is the production of finished goods, the middle is processing and control, of course, we also have raw materials and finished products storage-warehouse; For example, our typical software system also includes input (user input, data acquisition), output (user display, storage System), calculation and control (application server), Storage (file system or database, etc.). If we are summing up on this basis, merging operation and control into one item called processing, adding a communication and control link between the various components--the network--the following structure: input, processing, output, storage and network, as shown in the following illustration:
Now we're going to answer what the computer is doing: collecting data, processing data, outputting data, saving data, and this control and communication depends on the network. In fact, the above abstraction also has a function, is a machine so, so for a cluster application network, in fact, we can always divide the resources in the network so that the benefits are actually the benefits of the design pattern in the synthesis model, no matter how large the network, the size of the complex, we can always express and deal with, For example, for storage hardware, you are using a computer to do storage equipment, or with multiple units, your role is to complete the storage, for the software, you are using the database to do storage, or file to store, your role is to complete the storage. For a network, so is the case for an application system (software and hardware are inherently contradictory and unified). This kind of processing and thinking way, is that we study complex system of the tool, such as ERP in the BOM structure, some factory BOM is very complex, and some factory BOM structure is very simple, but no matter how complex the BOM structure, is two layers, or three, four layers ... Countless layers, whether you have only one child or tens of thousands, we can use a tree (in some cases, there will be an inverted tree) to be consistent expression and treatment.
Answer what the computer is doing, and in fact, answer what the network is doing. Does this thing have anything to do with clouds? Of course, this is actually the basic architecture of cloud computing, what the computer is doing and what the cloud is doing. No matter how it changes, we can always treat it in the same way. Some people will say that there may be a shortage of this, but this is not a problem, we can always think of it virtual existence. For this consistent expression and treatment (the core idea of the synthetic model), we can use abstract to extract the cocoon, and also can be made to complement (there is no feature, but we can think or virtual think that there is such a feature), to achieve a certain form of unity. This is actually the complement thought in the mathematical transformation.
From this unified thinking, we can actually think of the cloud as a network, as a computer, because essentially, there is no difference. The difference is the specialization of division of labor, such as the original storage is only a part of the computer, now have a dedicated computer to complete this part of the function; and the firewalls and the like can also look at is a kind of processor specialization development results. And for the cloud application software, you can certainly consider it as a computer, is the network, do not forget, the characteristics of the unified soft and hard.
So since cloud computing can be seen as a traditional network or computer, then why do we call it the cloud in particular now? In the next installment, we will look at the historical evolution of this concept from the perspective of the application and development of computers and the costs and benefits we have mentioned earlier.
PS: Here, I also strongly want to express a thought to you, it is in thinking and dealing with some problems, we should be at a higher level to look at these problems abstractly, using the means of uniform expression and treatment to avoid the details of our problems into the quagmire (such as the size of the problem, the study of non-critical differences, etc.), of course , this idea or method is not a matter of consideration (in many cases, these are the key issues, such as the question of size), we simply defer this problem to a lower level to consider, thus making our thinking more hierarchical and conducive to simplifying the complexity of thinking, This is actually the core idea of object-oriented analysis.