首页 > 代码库 > NATS_11:集群构建与验证

NATS_11:集群构建与验证

NATS服务集群化

  NATS支持每一个服务按照集群模式方式运行。你可以将这些服务组织在一起形成一个集群来提高服务器的容量的消息传递系统,并可以提升整个系统的弹性话和高可用性。

  注意,NATS集群服务器转发是通过一个跳跃来完成的。这意味着每个gnatsd当从一个客户端接收到消息之后通过路由信息会立即转发给对应注册的gnatsd实例。接收到的消息通过一个路由才会分发给本地的客户。因此一个完整的集群网,或完全图,建议NATS以功能作为目的方式来形象的描述整个过程。

概览

  除了可以监听一个客户端应用端口,gnatsd还可以监听一个“集群” URL(-cluster 选项)。另外,gnatsd服务器可以将该URL添加到它其中的 -routes 参数用以加入集群。这些选项可以指定在一个配置文件。

  例如:

  非集群化的启动

 gnatsd -p 4222 -m 8222

  一个最简单的集群化启动

  # Server A on 10.10.0.1
  gnatsd -p 4222 -cluster nats://10.10.0.1:5222

  # Server B on 10.10.0.2
  gnatsd -p 4222 -cluster nats://10.10.0.2:5222 -routes nats://10.10.0.1:5222

   或者采用另外一种方式

   # Server A on 10.10.0.1
   gnatsd -p 4222 -cluster nats://10.10.0.1:5222 -routes nats://10.10.0.2:5222

   # Server B on 10.10.0.2
   gnatsd -p 4222 -cluster nats://10.10.0.2:5222 -routes nats://10.10.0.1:5222 

  客户端连接到集群中的任何一个服务器都将会保持连接到服务器集群,即使它最初的连接被关闭了,只要至少有一个服务器存活那么就可以连上整个集群。

实例

 

NATS_11:集群构建与验证