Just suddenly think of a previous set of micro-service system, if let me re-take, if each micro-service is made into an interface similar to the form of third-party jar, if you want to use, in a unified location, directly build an object call is not simpler.
It is then thought that if the information that these microservices can be invoked is registered to a registry (in fact, it does)
, and then other projects just use the other sub-projects, directly in the registry to request the call is OK. This time if you can provide a unified call template is better, the most familiar resttemplate is this thing. After filling in the required information such as the URL of the project to be called, you can use this template to invoke the interface and interact with the information.
This unified registry, the way that systems communicate with each other, is the root cause of the existence of distributed projects, and the distributed architecture is the basis of the implementation of micro-services. The so-called microservices are a complete project that is split into sub-projects by function and business, which can be called microservices.
Some places say the difference between distributed and microservices: Distributed is typically deployed on different servers in different projects or the same project, while MicroServices can be deployed on a single server or deployed on multiple servers at will.
The idea is that the server is in the form of the same server and multiple servers. However, projects that are deployed on the same server, according to Host:port, are the only way to determine a project, and each of them is independent, in fact. So, even if you don't call them distributed, it's also a "pseudo-distributed".
As a result, microservices are inherently distributed.
Plug in a public and private cloud topic. When I first heard about public and private clouds, I was really confused, and I was doing a public cloud, and I was going to start a private cloud. But what is a public cloud. What is a private cloud. After the introduction of the company Daniel has been the following conclusions.
Public cloud: To the public, open to the public, the value of his existence as a public-facing, to meet the general public needs of a set of services. Because of its openness, in principle everyone is able to access it in a fixed way, and all users are using the same set of cloud services.
Private cloud: Internal, non-public. It is developed for some special customers, may contain some unique customer needs, is generally deployed in some local area networks, for a customer open use. No one else can access it, or there may be no sense that it exists at all.
The difference between a public cloud and a private cloud: The public cloud is deployed on the Internet and can be used by everyone in principle. A private cloud is developed for some customers and deployed on their local area network, and can only be used by that user or someone allowed by that user.
In fact, my personal understanding of the other layer is that the so-called public and private are relative. They are essentially a server system, one deployed in the world's largest LAN-the Internet, one deployed on smaller LANs. Their differences are linked to the local area network, so their differences can be indirectly understood as the difference between the Internet and a small area network. Then it is a big one small. For example, when buying a mobile phone, people generally buy the popular version, and some people use their own unique custom version.
Now back to microservices and distributed up.
In my understanding, micro-service is a kind of specialized microservices, and distributed is the root of micro-service. Now, when you're looking for a job, if you don't understand the distribution, it's considered low. It feels like the micro-service is a new concept (though it was raised early).
At the beginning, it was said that implementing MicroServices requires a registration center. And we usually register them in the same LAN, so that they can be accessed by each other, to achieve interaction.
And we use the Internet, we can easily access any of its projects (in principle, this should be the case), so I now understand that these projects or services, are registered to the Internet this registration center, so I can access to these projects, enjoy the services brought by these projects.
So, I'm irresponsible here to come to a conclusion: every Web site (project) on the Internet is registered with their owners in the world's largest LAN, so they are distributed storage in this local area network. Now they are together to provide us with the services we need for the day, and they are in fact a huge network project together. So they each carry some of the functionality of the project, and they are a sub-service, which is what we call microservices, relative to the vast project.
Finally, the so-called micro-service micro-word is actually relative, everyone should have their own understanding.