Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The purpose of this paper is to provide best practice recommendations for configuring the network resources in a Geode solution. The recommendations in this paper are not intended to provide a comprehensive, one-size-fits-all guide to network design and implementation. However, they should serve to provide a working foundation to help guide Geode implementations.

范围

This paper covers topics related to the design and configuration of network components used as part of a Geode solution. This paper covers the following topics:

本章节所讲的话题与网络组件的设计和配置有关. 将介绍如下的话题:

  • 网络架构的目标
  • NIC网卡选择和配置
  • 交换机配置参考
  • 通用的网络基础设施参考
  • Network architectural goals
  • Network Interface Card (NIC) selection and configuration
  • Switch configuration considerations
  • General network infrastructure considerations
  • TCP vs. UDP protocol considerations协议参考
  • Socket communications and socket buffer settings
  • Socket 通信和 Socket Buffer 设置
  • TCP 设置, 拥塞控制, 窗口扩展, 等TCP settings for congestion control, window scaling, etc.

对象

This paper assumes a basic knowledge and understanding of Geode, virtualization concepts and networking. Its primary audience consists of:

...

  • Reduced risk analysis time from 6 hours to 20 minutes, allowing for record profits in the flash crash of 2008 that other firms were not able to monetize.
  • Improved end-user response time from 3 seconds to 50 ms, worth 8 figures a year in new revenue from a project delivered in fewer than 6 months.
  • Tracked assets in real time to coordinate all the right persons and machinery into the right place at the right time to take advantage of immediate high-value opportunities.
  • Created end-user reservation systems that handle over a billion requests daily with no downtime.

Geode 通信

Geode members use a combination of TCP成员使用 TCP, UDP unicast and UDP multicast for communications between members. Geode members maintain constant communications with other members for the purposes of distributing data and managing the distributed system单播和 UDP 多播相结合的方式进行成员之间的通信. Geode 成员与其他成员之间维护着经常性通信 , 为了分发数据和管理整个分布式系统.

成员发现通信

Peer member discovery is what defines a distributed system. All applications and cache servers that use the same settings for peer discovery are members of the same distributed system. Each system member has a unique identity and knows the identities of the other members. A member can belong to only one distributed system at a time. Once they have found each other, members communicate directly, independent of the discovery mechanism. In peer discovery, Geode uses a membership coordinator to manage member joins and departures. There are two discovery options: using multicast or using locators.成员发现是什么定义了一个 分布式系统. 所有的应用和使用了相同配置的缓存服务器, 在同一个分布式系统当中互相发现. 每一个系统成员都有一个唯一的ID, 知道其他成员的 ID 号. 一个成员只能属于一个分布式系统. 一旦它们之间互相发现, 成员即可直接互相通信, 从而独立于发现机制. 在Peer 发现中, Geode 使用了一个成员关系协调器来管理成员加入和离开分布式系统. 主要有两个发现选项: 使用多播和使用 Locators.

  • UDP/IP Multicast  新的成员使用多播地址和端口广播它们的连接信息到所有运行的成员. 现有的成员响应并建立与新成员的通信.UDP/IP Multicast New members broadcast their connection information over the multicast address and port to all running members. Existing members respond to establish communication with the new member.
  • Geode Locators Using TCP/IP Peer locators manage a dynamic list of distributed system members. New members connect to one of the locators to retrieve the member list, which it uses to join the system管理一个分布式成员的动态列表. 新的成员连接到一个Locator 来查询成员列表, 然后加入到分布式系统中.

通用的消息和 Region 操作通信

Geode supports the use of 支持 TCP, UDP Unicast or UDP Multicast for general messaging and for region operations distribution. The default is TCP. However, Geode may be configured to use UDP if desired单播 或 UDP 多播的通信方式来分发消息和执行 Region 操作. 默认情况是TCP. 然而, Geode 也能够配置使用 UDP.

Geode 拓扑

Geode members can be configured in multiple topologies to provide a flexible solution for enterprise system needs. The following sections summarize these topologies成员可以配置成多种拓扑结构来提供一个非常灵活的解决方案. 如下的章节总结了以下几种拓扑结构.

P2P 拓扑结构

The peer-to-peer topology is the basic building block for Geode installations. In this configuration, each member directly communicates with every other member in the distributed system. New members broadcast their connection information to all running members. Existing members respond to establish communication with the new member. A typical example of this configuration is an application server cluster in which an application instance and a Geode server are co-located in the same JVM. This configuration is illustrated in the diagram belowP2P 拓扑结构是最基本的 Geode 部署网络结构. 在这个配置中, 每一个成员直接与分布式系统中其他的成员进行通信. 新的成员广播它们的连接信息到所有运行的成员. 现有的成员响应新成员的建立连接的请求. 此配置一个典型的例子是在一个应用服务器集群中, 一个应用实例与一个Geode 服务器位于同一个 JVM 上. 此配置如下图所示.

Peer to peer image

客户端-服务器拓扑

The Client Server topology is the most commonly used topology for Geode installations. In this configuration, applications communicate with the Geode servers using a Geode client. The Geode client consists of a set of code that executes in the same process as the application. The client defines a connection pool for managing connectivity to Geode servers and may also provide a local cache to keep selected Geode data in process with the application. New Geode servers starting up will contact a locator to join the distributed system and be added to the membership view. The locators in a Geode system server to coordinate the membership of the system and provide load balancing for Geode clients. This configuration is illustrated in the following diagram.

...