Service Registration and Discovery

Source: Internet
Author: User

In distributed systems, where each subsystem is a multiple instance, a service coordinator must be introduced to provide the caller with a named message for the available invocation provider.
Service coordinator, such as Zookeeper,etcd,eureka
The features they have to have:
-It is highly available and consists of multiple service nodes, even if some nodes hang up and do not affect the normal operation, avoid a single point of failure.
-itself is a distributed, consistent k-v storage System. When the provider starts, it registers its own configuration information with the coordinator, which is reversed when the provider is offline. The service caller will notify the caller as long as the corresponding configuration of the coordinator is changed.
-Provides a heartbeat mechanism, and if the party program is accidentally hung up without an anti-registration, the Coordinator will also time out to reject the unavailable provider.
-The service coordinator itself does not provide a load balancing service, and the load balancer is routed by the caller based on the policy it has set.

Traditional built-in DNS, while somewhat similar in functionality, is not available for service registration and discovery itself is not highly usable, and there is a single point of failure. The service cannot be automatically registered with Autodiscover. The registration process and the anti-registration must notify the DNS server manually or through a applet. The service caller passes the internal domain name rotation Dns,dns automatically provides one of the callers ' IPs based on the load balancing policy. There are two problems with this.
The first is that the DNS server itself supports a load balancing strategy that is rarely and cannot be customized according to its own requirements. The second is that the first time the caller rotation DNS, the query results are cached locally, and the call is initiated directly against a caller within the validity period. The call provider cluster exists on-line and offline, DNS is updated, but a caller will cache a service provider that has been offline causing the call to fail. No heartbeat mechanism is provided and the provider is not aware of the hang-up.

Similarly, nginx, which is used for HTTP reverse proxies, provides load-balancing services and cannot be used for service registration and discovery.

Contact Us

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.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.