Documentation Home

18.4.3.11 NDB Cluster 共享内存连接

NDB Cluster 尝试使用共享内存传输器并在可能的情况下自动配置它。 [shm]文件中的部分 config.ini明确定义集群中节点之间的共享内存连接。当显式定义共享内存作为连接方式时,至少需要定义 NodeId1, NodeId2, 和 ShmKey。所有其他参数都有默认值,在大多数情况下应该可以正常工作。

重要的

SHM 功能仅被认为是实验性的。它在任何当前的 NDB Cluster 版本中都没有得到正式支持,并且测试结果表明 SHM 性能并不比使用 TCP/IP 作为传输器时明显更高。

由于这些原因,您必须自己确定或使用我们的免费资源(论坛、邮件列表)确定 SHM 是否可以在您的特定情况下正常工作。

  • Checksum

    版本(或更高版本) 新开发银行 7.3.1
    类型或单位 布尔值
    默认 真的
    范围 真假
    重启类型

    N(NDB 7.3.1)

    此参数是一个布尔值 ( Y/ N) 参数,默认情况下禁用。启用后,所有消息的校验和都会在放入发送缓冲区之前进行计算。

    此功能可防止消息在发送缓冲区中等待时被损坏。它还可以检查数据在传输过程中是否损坏。

  • Group

    版本(或更高版本) 新开发银行 7.3.1
    类型或单位 未签名
    默认 35
    范围 0 - 200
    重启类型

    N(NDB 7.3.1)

    确定组接近度;较小的值被解释为更接近。对于大多数情况,默认值就足够了。

  • HostName1

    版本(或更高版本) 新开发银行 7.3.1
    类型或单位 名称或 IP 地址
    默认 [...]
    范围 ...
    重启类型

    N(NDB 7.3.1)

    HostName1HostName2参数可用于指定要用于两个节点之间给定 SHM 连接的特定网络接口 。用于这些参数的值可以是主机名或 IP 地址。

  • HostName2

    版本(或更高版本) 新开发银行 7.3.1
    类型或单位 名称或 IP 地址
    默认 [...]
    范围 ...
    重启类型

    N(NDB 7.3.1)

    HostName1HostName2参数可用于指定要用于两个节点之间给定 SHM 连接的特定网络接口 。用于这些参数的值可以是主机名或 IP 地址。

  • NodeId1

    版本(或更高版本) 新开发银行 7.3.1
    类型或单位 数字
    默认 [没有任何]
    范围 1 - 255
    重启类型

    N(NDB 7.3.1)

    要识别两个节点之间的连接,有必要为每个节点提供节点标识符,如 NodeId1NodeId2

  • NodeId2

    版本(或更高版本) 新开发银行 7.3.1
    类型或单位 数字
    默认 [没有任何]
    范围 1 - 255
    重启类型

    N(NDB 7.3.1)

    要识别两个节点之间的连接,有必要为每个节点提供节点标识符,如 NodeId1NodeId2

  • NodeIdServer

    版本(或更高版本) 新开发银行 7.3.1
    类型或单位 数字
    默认 [没有任何]
    范围 1 - 63
    重启类型

    N(NDB 7.3.1)

    标识共享内存连接的服务器端。

  • OverloadLimit

    版本(或更高版本) 新开发银行 7.3.1
    类型或单位 字节
    默认 0
    范围 0 - 4294967039 (0xFFFFFEFF)
    重启类型

    N(NDB 7.3.1)

    当发送缓冲区中的未发送字节多于此数量时,连接将被视为过载。

    此参数可用于确定在连接被视为过载之前必须存在于发送缓冲区中的未发送数据量。有关更多信息,请参阅 第 18.4.3.12 节,“配置 NDB Cluster 发送缓冲区参数”

  • PortNumber

    版本(或更高版本) 新开发银行 7.3.1
    类型或单位 未签名
    默认 [...]
    范围 0 - 64K
    重启类型

    S(NDB 7.3.1)

    设置 SHM 传输器要使用的端口。

  • SendSignalId

    版本(或更高版本) 新开发银行 7.3.1
    类型或单位 布尔值
    默认 错误的
    范围 真假
    重启类型

    N(NDB 7.3.1)

    要追溯分布式消息的路径,必须为每条消息提供唯一标识符。将此参数设置为Y会导致这些消息 ID 也通过网络传输。默认情况下,此功能在生产构建中禁用,并在-debug构建中启用。

  • ShmKey

    版本(或更高版本) 新开发银行 7.3.1
    类型或单位 未签名
    默认 0
    范围 0 - 4294967039 (0xFFFFFEFF)
    重启类型

    N(NDB 7.3.1)

    设置共享内存段时,使用整数表示的节点 ID 来唯一标识要用于通信的共享内存段。没有默认值。

  • ShmSize

    版本(或更高版本) 新开发银行 7.3.1
    类型或单位 字节
    默认 1M
    范围 64K - 4294967039 (0xFFFFFEFF)
    重启类型

    N(NDB 7.3.1)

    每个 SHM 连接都有一个共享内存段,节点之间的消息由发送方放置并由读取方读取。该段的大小由 定义 ShmSize。默认值为 1MB。

  • SigNum

    版本(或更高版本) 新开发银行 7.3.1
    类型或单位 未签名
    默认 [...]
    范围 0 - 4294967039 (0xFFFFFEFF)
    弃用 是(在 NDB 7.6 中)
    重启类型

    N(NDB 7.3.1)

    使用共享内存传输器时,当共享内存中有可用的新数据时,一个进程会向另一个进程发送操作系统信号。如果该信号与现有信号冲突,则可以使用此参数对其进行更改。由于不同的操作系统使用不同的信号编号,因此在使用 SHM 时可能会出现这种情况。

    默认值为 SigNum0;因此,必须设置它以避免在使用共享内存传输器时集群日志中出现错误。通常,此参数在文件的[shm default]部分中 设置为 10 config.ini

重启类型。  本节参数说明所使用的重启类型信息如下表所示:

表 18.15 NDB Cluster 重启类型

象征 重启类型 描述
节点 可以使用滚动重启更新参数(请参阅 第 18.6.5 节,“执行 NDB Cluster 的滚动重启”
小号 系统 所有集群节点必须完全关闭,然后重新启动,以影响此参数的更改
最初的 必须使用该 --initial选项重新启动数据节点