美文网首页程序员
Apache Geode(三):Geode的拓扑和通信

Apache Geode(三):Geode的拓扑和通信

作者: SofiyaJ | 来源:发表于2017-12-15 11:34 被阅读0次

    Apache Geode允许水平和垂直缩放

    • 所有系统的核心是单一的P2P分布式系统。
    • 在C/S系统中,少数服务器进程为更大的客户机组管理数据和事件处理。
    • 在多站点系统中,几个不同地理位置的系统松散地耦合到单个有凝聚力的处理单元中。

    准备:

    • 确定协议(TCP和UDP单播和多播的组合)和地址(绑定地址或在IPv4和IPv6之间选择)
    • 设立会员和沟通

    P2P配置及其发现机制

    配置P2P发现

    gemfire.properties配置文件中可以列出定位器:

    locators=<locator1-address>[<port1>],<locator2-address>[<port2>]
    

    如果要运行独立成员,该配置文件禁用locators:

    locators=
    mcast-address=                    
    mcast-port=0
    

    配置P2P通信

    将常规消息设置为使用TCP或UDP单播,在gemfire.properties文件中:

    disable-tcp=false
    

    或者使用UDP单播

    disable-tcp=true
    

    使用UDP多播且分发到任何region

    mcast-address=<address>
    mcast-port=<port>
    

    在cache.xml中,为每个需要多播的区域启用多播:

    <region-attributes multicast-enabled="true"/> 
    

    每个缓存实例或成员直接与分布式系统中的每个其他成员进行通信,一个典型的例子是一个应用程序服务器集群,其中应用程序和高速缓存位于同一位置并共享相同的堆。


    P2P.png

    成员使用一个或多个定位器发现彼此。定位器提供发现和负载均衡服务。P2P定位器管理分布式系统成员的动态列表。新成员连接到其中一个定位器以检索用于加入系统的成员列表。一个成员一次只能属于一个分布式系统。一旦彼此找到了对方,成员之间直接沟通,独立于发现机制。在P2P发现中,Geode使用成员协调员来管理成员加入和离开。


    peer discovery.png

    C/S配置及其发现机制

    此结构是垂直扩展的模型,Client通常在应用程序进程空间中托管一小部分数据,然后委托给服务器系统。客户机/服务器体系结构本身与点对点相比,提供了更好的数据隔离性,高提取性能和更高的可伸缩性。如果数据分发会给网络带来很大负担,那么客户机/服务器体系结构通常会提供更好的性能。在任何客户机/服务器安装中,服务器系统本身就是一个P2P系统,数据在服务器之间分配。Client系统有一个连接池,它用来与服务器和其他Geode成员进行通信。Client也可能包含本地缓存。

    CS.png

    定位器持续监视服务器可用性和服务器负载信息,随时为Client提供负载最轻的服务器的连接信息。

    为了提高性能和缓存一致性,Client必须以独立成员身份运行,或者以不同于其服务器的分布式系统运行。

    CSD.png

    多站点配置及其发现机制

    适用于水平缩放,跨地域,每个站点都是P2P或C/S系统。


    多站点.png

    发现机制

    在多站点(WAN)配置中,Geode集群使用定位器来发现远程Geode集群以及发现本地Geode成员。WAN配置中的每个定位器唯一地标识其所属的本地群集,并且还可以标识远程Geode群集中的定位器,以便将它连接到WAN分配。定位器启动时,它会联系每个远程定位器,以交换有关远程群集中可用定位器和网关接收器配置的信息。除了共享有关其自己的群集的信息之外,定位器还共享从其他所有连接的群集获得的信息。每当新的定位器启动或现有的定位器关闭时,更改的信息将通过广域网广播到其他连接的Geode群集。locator相当于粘合剂的角色,将集群中所有的成员连接在一起。

    程序媛小白一枚,如有错误,烦请批评指正!(#.#)

    相关文章

      网友评论

        本文标题:Apache Geode(三):Geode的拓扑和通信

        本文链接:https://www.haomeiwen.com/subject/ybmrwxtx.html