Breaking News: Grepper is joining You.com. Read the official announcement!
Check it out

The server-side discovery pattern

Pragya Keshap answered on February 18, 2023 Popularity 1/10 Helpfulness 1/10

Contents


More Related Answers

  • server implementation
  • client-side-discovery
  • Service Registry/Discovery Pattern
  • What is Service Discovery Pattern?
  • Implementing Service Discovery – Eureka Server
  • The client-side discovery pattern
  • Application Discovery Service#

  • The server-side discovery pattern

    0

    In the server-side discovery pattern, the client isn't aware of the Service Registry. The client service requests a service using a load balancer, which then queries the Service Registry.

    The AWS Elastic Load Balancer (ELB) is one example of server-side discovery. It is commonly used as a load balancer for external traffic from the internet. It manages the load between a set of registered Amazon Elastic Compute Cloud (EC2) instances or Amazon EC2 Container Service (ECS) containers. Other examples include HTTP servers and load balancers such as NGINX Plus.

    In the server-side service discovery pattern, the client doesn't need to worry about managing the code or algorithm for load balancing and discovering services. Instead, we can use a separate load balancer server.

    The following diagram illustrates server-side service discovery:

    As you can see in the preceding diagram, this approach uses a Load Balancer server that is separate from the client service. The client service makes a request directly to the load balancer, which queries the Service Registry and then finds a service.

    The server-side service discovery pattern has various advantages and disadvantages. Some of the advantages include the following:

    In this approach, the client service doesn't require the complex logic of searching for services or load balancing traffic

    There is no need to implement discovery logic for each programming language and framework used by a service client

    Some cloud environments, such as AWS Elastic load balancer, provide this functionality for free

    This approach also has the following disadvantages:

    The load balancer needs to be a highly available system, so you have to set it up and manage it carefully

    The load balancer could be a single point of failure, so it needs to be replicated for availability and capacity

    The load balancer server must support important protocols such as HTTP, gRPC, and Thrift

    It has more network rounds than the client-side service discovery pattern

    Popularity 1/10 Helpfulness 1/10 Language whatever
    Source: Grepper
    Link to this answer
    Share Copy Link
    Contributed on Feb 18 2023
    Pragya Keshap
    0 Answers  Avg Quality 2/10


    X

    Continue with Google

    By continuing, I agree that I have read and agree to Greppers's Terms of Service and Privacy Policy.
    X
    Grepper Account Login Required

    Oops, You will need to install Grepper and log-in to perform this action.