Versions Compared

Key

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

...

Cluster Main is the main class in the cluster module, which initializes  performs some developer-level customization and start a MetaClusterServer, which will further initialize the Raft logics and the underlying IoTDB.

Servers

Servers are implementations of Thrift RPC servers, their main concerns are network transport and protocol parsing. Each of them listens on a port and an ip address, accept connection from clients, wrap connections with certain types of Thrift transports, read requests from the transports, parse them with specific protocols, and send the requests to associated RaftMembers. Each node only have one each server.

  • MetaClusterServer: listens on internal_meta_port, receives meta-group-related Raft requests, and forward forwards them to MetaMember. It also starts the underlying IoTDB once it is up.
  • DataClusterServer: listens on internal_data_port, receives data-group-related Raft requests, decides which DataMember will process it and forwards to it.
  • ClientClusterServer: listens on external_client_port, receives database operations from clients, and forwards them to MetaMember.