Aerospike数据库的理解

时间:2016-01-07 04:16:40

标签: aerospike

嗨,我是airospike DB的新手。所以我有一些简单的问题。

  1. 如果我有一个包含3个节点的集群。 IP是192.168.1.2,192.168.1.3,192.168.1.4。
  2. 所以当我在客户端配置时,我应该将哪个IP地址用作群集ip?我应该使用3个IP还是1个IP。

    假设我将客户端只有一个IP(192.168.1.2)作为集群IP进行配置,如果192.168.1.2发生故障,那么会发生什么?因为我的客户知道一个IP,但现在已经死了。

    1. 另一个问题是,当我在aws中设置群集(网格)时。我们知道所有集群节点配置都是相同的。最初我可以把mesh-seed-address-port 192.168.1.2 3002 mesh-seed-address-port 192.168.1.3 3002 mesh-seed-address-port 192.168.1.4 3002
    2. 我的所有节点配置文件。但是当我将另一个新节点添加到群集中时,我是否需要手动更改所有节点以添加

      mesh-seed-address-port 192.168.1.5 3002(新节点IP)

      1. 当我做基准测试时,我在一瞬间获得了100万TPS。如果我创建一个具有3个节点的集群,那么它是什么意思?我会得到多少吞吐量?这是300万TPS? (请描述一下这个)。

      2. 关于负载均衡我应该使用AWS弹性负载均衡(ELB)吗?或任何其他好方法?

      3. 我将使用aerospike进行聊天应用程序(例如,whatsapp,viber),我将在AWS中配置所有内容。那么什么是最好的商店引擎选择。 (我需要快速读/写)。

      4. 如果你有任何更好的建议,请建议我。

1 个答案:

答案 0 :(得分:3)

(我在Aerospike工作)

  1. 您可以使用IP作为种子,但最好使用多个...这仅用于客户端启动时与群集的初始连接。因此,如果一个节点IP用作客户端中的种子,并且下次重新启动客户端时该节点已关闭,则客户端将无法连接。请参阅this page

  2. 的详细信息
  3. 向群集添加新节点时,无需更改现有节点的配置。新添加的节点应该在其配置中具有群集中的现有节点之一以进行连接。最佳做法是使配置文件与指定的多个节点保持同步,以便在节点重新启动时,节点仍然可以根据其配置在集群中找到至少一个节点。

  4. 3-单个节点群集上的写入工作负载并不代表使用复制因子> = 2的多个节点进行扩展时的性能。在单个节点群集上写入时,您只需要写入1个副本。在具有复制因子2的2节点集群上写入时,默认情况下,集群将在返回之前写入两个副本(在主服务器和副本服务器之间具有网络跃点),因此您的工作量将超过两倍。 2节点集群对于性能基础更具代表性,可以在添加更多节点时线性推断(假设网络或客户端或服务器主机上没有遇到瓶颈)。读取工作负载通常可以从一个节点推断出......但建议通常在至少具有代表性工作负载的3节点集群上进行基准测试(匹配读/写比率,记录大小等)。

    4- Aerospike智能客户端负责分片,您不应使用任何负载均衡器从运行aerospike智能客户端的主机进入群集。 This is a good read了解这一点。

    5-这是一个容易回答的问题......你必须根据你的工作量做一些基准测试和大小调整。请随意查看AWS deployment guide。这将很快得到增强,有更多细节可以帮助您。