Cloud-tier load Balancing tool Eureka

Source: Internet
Author: User
Tags failover representational state transfer wowza wowza server elastic load balancer

Amazon provides a load balancing tool Elastic load Balancer, but for end-user Web traffic servers, and Eureka is for the load balancing of middle-tier servers. AWS's inherent environment, traditional load balancing support for IP addresses, hostnames, and so on, is not good and requires a more complex registration/exit mechanism. The Eureka filled the void. This article on the basis of several previous blogs, a more systematic introduction of Eureka.
What is Eureka?
The official definition is "Eureka are a REST (representational state Transfer) based service, that's primarily used in the AWS cloud for Lo Cating Services for the purpose of the load balancing and failover of Middle-tier servers. ", the translation is:" Eureka is a REST-based service, it is mainly Used to locate services for load balancing and failover of middle-tier servers in the AWS cloud. "
Eureka VS ELB
Amazon ELB is targeted at end-user Web traffic servers, Eureka for middle-tier servers.
Why Eureka?
AWS's traditional load-balancing support for IP addresses, hostnames, and so on is not good and requires a more complex registration/exit mechanism. AWS does not provide a middle-tier load balancer, and Eureka fills this void.
Eureka Application Scenarios

    • There is a middle tier service in the AWS environment, but you don't want to register it with ELB, or you don't want to expose it to the outside world
    • No session binding mechanism required, no sticky sessions and no need to load session data in external cache (e.g. memcached)
    • Implement the LB Algorithm yourself

Eureka Architecture
The architecture diagram for the Eureka is as follows


As we can see, the Eureka component is divided into two parts: the Eureka server and the Eureka client. The client is divided into two types: application Service client and application client.
the working mechanism of Eureka
Each region has its own Eureka server cluster, with at least one Eureka server in each zone to cope with zone paralysis.
The application Service registers to the Eureka server at startup, and then sends the heartbeat every 30 seconds to update its state. If the client is not able to send a heartbeat update, it will be rejected by its registered Eureka server after 90 seconds. Application clients from any zone can view these registration information (viewed every 30 seconds) and locate their own service Application service instance for remote invocation.
Q: Will communication between my application Service and application Client be Eureka Limited
A: No. Eureka just helps you find the server host instance and does not constrain the communication protocols and methods between your application Service and Client.
Q: Look at these feeling good abstract, there is no can start the demo
You can view Eureka's github to find a demo. Some feature (such as the integration of Eureka and Ribbon) do not provide demo, but we can get some inspiration from the unit test code provided by Eureka GitHub.
In addition, the author also organized a lot of demo, are their own hands-on verification through, readers can rest assured that the reference:

    • deployment of Eureka servers under Linux
    • Eureka application Service Client registration and running example
    • Eureka application Cl Ient Client Run example
    • Cloud middle tier service-zone-aware load Balancer Ribbon
    • Integrated development of ribbon and Wowza
    • integration of ribbon and Eureka

        These demos have been read, I believe you can play Eureka. If there's anything you don't understand, you can look at the Eureka API. The author suggests directly to see Eureka source code, the source is not much, also on the appearance of thousands of lines, and inside the comments are very detailed, in contrast, online  api There are many ways to provide only a method name, and no detailed description.
         Eureka deployed tests
        You can write your own scripts and then manually put the cluster nodes down To verify the resiliency of the Eureka deployment-Eureka uses servo to track client and server-side performance, monitor and alarm, which can be used for JMX registration and cloud monitoring for Amazon. Of course you can also use one of Netflix's other open source tools,- simianarmy, and this naughty little monkey will deliberately thread your service node to verify the resiliency of your Eureka deployment to the handling of random application service outages.
         Q: Is there a real application case
        next to a real-world production scenario, Take a look at the application of Eureka in practice.
        The following is the deployment architecture diagram of the streaming media server Wowza Live:

        WOWZA Server service external webcast traffic, but it needs to go to CAS The server authenticates the user and needs to go to the Relay server to read the live stream. CAS and Relay are two middle tier services that do not need to be exposed directly to the outside world. Here are the timing interaction diagrams between them:

         references

      • Https://github.com/Netflix/eureka/wiki/Eureka-at-a-glance
      • Http://www.infoq.com/news/2012/09/Eureka

Reprinted blog: http://blog.csdn.net/defonds/article/details/38067867

Cloud-tier load Balancing tool Eureka

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.