zoukankan      html  css  js  c++  java
  • zookeeper系列之七—从远程调用认识zookeeper

    http://www.csdn.net/article/2014-01-02/2817944-zookeeper   

    在Hadoop的学习过程中,Zookeeper是让很多初学者困惑的技术,远程调用服务是一个很适合zookeeper应用的场景,这里从自己设计的远程调用服务架构谈起,详细介绍了Zookeeper这一应用场景。

    Zookeeper技术详解

        在远程服务里Zookeeper使用在远程调用管理组件里,而服务调用者则是Zookeeper的客户端,远程调用管理组件也是远程调用服务的核心所在,如果远程调用管理组件在运行时挂掉了,那么整个应用也将不可用,因此远程调用管理组件必须是可靠的,这种可靠性的要求甚至高于服务提供者和服务调用者的可靠性级别,因此远程调用管理组件的设计必须是分布式的,而且一定要是可靠的分布式。

        远程调用管理组件是一个完全符合Zookeeper场景的应用或者说是一个标准的Zookeeper应用,为了便于后面的论述,这里我的更进一步的讲解下远程调用管理组件的功能。从前面的叙述,我们知道了远程调用管理组件核心作用是存储服务提供者和服务调用者通讯的配置信息,例如存储服务提供者的IP地址和端口,记录服务提供者的服务类别,它还记录服务调用者的IP地址和端口号(这个信息是在远程调用管理组件的Web管理系统录入的)以及服务调用者和服务提供者的对照关系。对于服务提供者,远程调用管理组件还提供心跳机制检测服务提供者的健康状态,如果远程调用管理组件发现服务提供者一些服务器出现问题了,它会及时更新服务提供者的配置信息,并将这些变化及时推送给服务调用者。由上所述,从配置信息存储的角度,远程调用管理组件其实就是一个远程存储配置信息的系统,而心跳机制和推送机制这是一种观察者模式,而上面这些功能都是分布式环境的功能,需要很高的可靠性。Zookeeper最典型的一个应用就是可以做分布式应用的配置服务,具体点就是向我们平时写的配置文件,到了分布式系统里也需要一个独立的系统来完成,并且是动态的配置服务。

  • 相关阅读:
    【转载】 下载百度云的正确姿势---油猴插件
    微信公众号开发
    F5 BIG-IP – Useful SNMP oids to monitor
    F5负载均衡 MIBs bigip oid
    常用OID(SNMP)
    有趣的深度图:可见性问题的解法
    Unity User Group 北京站:《Unity5.6新功能介绍以及HoloLens开发》
    再议Unity优化
    工作中的趣事:聊聊ref/out和方法参数的传递机制
    聊聊网络游戏同步那点事
  • 原文地址:https://www.cnblogs.com/man-li/p/4212781.html
Copyright © 2011-2022 走看看