Open topic with navigation
Description of Brokers
The role of a broker is to provide database life cycle control (start, stop) for database processes, that is transaction engines (TEs) and/or storage managers (SMs). A broker provides the following:
- Allows management client access. NuoDB management clients, such as the Automation Console and the NuoDB Manager command line utility, communicate directly to a broker.
- Communicates with all other brokers in the domain.
- Routes SQL connection requests to transaction engines anywhere in the domain, using different SQL connection load-balancing schemes.
- Stores the durable domain configuration.
- Runs the enforcer, which automates database process life cycle and scale-out based on each database's template (see Using Database Templates).
- Monitors activity and fires alarms for all hosts, databases and processes in the domain.
- Provides safety in case of failure, such as network partitioning. Safety means that an incorrect result is never returned.
- Maintains MBeans for each database, broker, agent, and process in the domain.
Each broker has a complete picture of the entire domain, including all hosts, and all databases and their processes. As you can see, a domain is functional only with at least one broker. For continuous availability, each data center (and availability zone) should run at least one broker.