Working with multiple Data Servers
Deployed dashboards have a unique associated default Data Server or Display Server. For Web-based deployments, this default is specified in the Startup and Server section of the Deployment Configuration Editor. For Viewer deployments, it is specifed upon Viewer startup. By default, the data-handling involved in attachments and commands is handled by the default server, but advanced users can associate non-default Data Servers with specific attachments and commands. This provides additional scalability by allowing loads to be distributed among multiple servers. This is particularly useful for Display Server deployments. By deploying one or more Data Servers behind a Display Server, the labor of display building can be separated from the labor of data handling. The Display Server can be dedicated to building displays, while the overhead of data handling is offloaded to Data Servers.
Apama supports the following multiserver configurations:
The Attach to Apama and Define ... Command dialogs (except Define System Command) include a Data Server field that can be set to a Data Server's logical name. To associate a logical name with the Data Server at a given host and port, developers use the Data Server tab in the General tab group of the Application Options dialog (select Tools Options in Builder).
For Display Server (thin client) deployments, you must use the option
--namedServerMode whenever you start named Data Servers. See
Display Server deployments with multiple Data Servers.
The logical Data Server names specified in the Builder's Application Options dialog are recorded in the file OPTIONS.ini, and the deploymenbt wizard incorporates this information into deplyments. You can override these logical name definitions with the --namedServer name:host:port option to the Builder, Viewer, Data Server or Display Server executable. Below is an example. This is a sequence of command line options which should appear on a single line as part of the command to start the executable:
--namedServer Server1:ProductionHost_A:3278 --namedServer Server2:ProductionHost_B:4278 --namedServer Server3:ProductionHost_C:5278
Here Server1, Server2 and Server3 are the server logical names.