Bookshelf Home | Contents | Index | Search | PDF |
Siebel Field Service Guide > Scheduling and Dispatch > Scheduling Administration >
Setting Up Server Processes, Performance, and Key-Based Routing
Every Siebel server can run one or more service regions. Large service regions can run on a dedicated server.
Each service region can run on only one application server. This allows the information for one service region to be cached within memory instead of being continually read from the database, reducing the load placed on the database during schedule optimization.
The ABS and Optimizer interact with the database only at these times:
- Data loading. The ABS and Optimizer read large amounts of information from the database on start up, or when the service region is reloaded (Loading and Reloading Service Region Data). For this reason, it is best to avoid reloading during a busy time.
- Saving schedules. The Optimizer can save its result sets to the database at specified time intervals (see the parameter Optimizer - Save Interval in Table 29), but unless this is a very large data set, it should not noticeably affect database performance.
A scheduling request must be routed to the correct application server. To accomplish this, the Siebel Scheduling takes advantage of the key-based routing available to Siebel servers (see the Server Key Mappings View). There are two server key mappings, one for the ABS and one for the Optimizer.
When the user clicks the Book Appt button, the request is sent to the enterprise server. The enterprise server then looks at a map of the service regions and routes the request to the appropriate Siebel server that stores that service region.
Multi-Processor Support
If the underlying operating system can support multiple processors on one computer, Siebel Scheduling can take advantage of those processors by running different service regions for the ABS and Optimizer on different processors. This is accomplished by setting different process numbers in a server key map. A server with a single processor can run multiple processes, but this may reduce performance.
NOTE: The number of processes running on a server computer bears no relation to the number of processors in that computer.
Since the ABS and Optimizer are different modules, they are already running as separate processes, even though the process number is the same. One module for one service region can only run in one process at a time.
For example, consider a four-processor computer, with only two of the processors in use. If one service region runs with both the ABS and Optimizer, the key map would look like the following example.
Server Service Region Process1 Module AppServer1 West Coast Region 1 ABS AppServer1 West Coast Region 1 Optimizer
1Process refers to the number of processes for that component, not the processor number on the server.
NOTE: It is not possible to run one module for a service region as two processes.
If two service regions run on a four-processor computer, it is possible to use all four processors, as in the following example.
Server Service Region Process1 Module AppServer1 West Coast Region 1 ApptBook AppServer1 East Coast Region 2 ApptBook AppServer1 West Coast Region 1 Optimizer AppServer1 East Coast Region 2 Optimizer
1Process refers to the number of processes for that component, not the processor number on the server.
If there are more than two service regions on a four-processor machine, it is possible to run them as different processes. For example, if the West Coast Region is very large and the Central and East Coast regions are smaller, the following scheme might be the best use of the processors on a server.
Server Service Region Process1 Module AppServer1 West Coast Region 1 ApptBook AppServer1 East Coast Region 2 ApptBook AppServer1 Central Region 2 ApptBook AppServer1 West Coast Region 1 Optimizer AppServer1 East Coast Region 2 Optimizer AppServer1 Central Region 2 Optimizer
1Process refers to the number of processes for that component, not the processor number on the server.
The West Coast region, which requires more computation, uses two processors. The East Coast and Central regions run in the same processes and on the same two processors.
Each server component is multi-threaded and can load schedules for multiple service regions. These schedules are shared by multiple threads.
Each request to the Optimization Engine runs on a new thread. A request identifies the schedule for one service region that it requires and locks it. Requests for schedules for other service regions can continue while requests for the same schedule are queued.
Bookshelf Home | Contents | Index | Search | PDF |
Siebel Field Service Guide Published: 21 April 2003 |