Blackboard Learn supports installation across multiple application servers with a hardware load balancer or a software solution. Blackboard Learn performance is better when the servers are dedicated to Blackboard Learn processes and requests. Using a software solution for load-balancing puts additional strain on the processors as load-balancing is handled by the application servers, not by a separate piece of hardware.
Load Balanced Configurations
The following diagram shows an example of a multiple application server configuration.
The diagram also shows integration with an LDAP server or servers to handle authentication and an SIS system to share data with Blackboard Learn. Integrating these components with a load-balanced configuration is not difficult, but does require each Web/application server to share the same settings.
Finally, the diagram shows a Storage Area Network (SAN) device and a backup device. A SAN device is not required but many institutions choose to use one. Regular, frequent data backup and consistent recovery procedures are critical parts of any Blackboard Learn configuration. The diagram shows a tape drive backup but any backup method may be used that meets the needs of the institution.
Benefits of Scaling Out with Additional Web/Application Servers
Scaling out distributes the computing workload among multiple servers by clustering or load balancing, with the ability to add servers to increase capacity. By distributing the workload, processing resources are spread among multiple servers, which improves both performance and the availability of the overall service.
Down time is reduced with a scale out approach because most single points of failure are removed. If a server goes down, other servers pick up the load dynamically, allowing the application to continue servicing clients.
To learn more about configuring a Blackboard Learn environment to achieve the best performance possible, see Performance Optimization.
What to do with System Tasks on a Retired Node
When permanently shutting down a Node, the responsibility of the System Tasks for that Node must be re-assigned if the System Tasks have not completed. Best practice dictates that the System Tasks are allowed to complete prior to Retiring the Node associated to those System Tasks. If this is not possible, then the System Tasks can be re-assigned manually to another Node so that the System Tasks may finish.
How To Verify The Node Has Completed Processing All System Tasks
- From the Administrator Panel, click Logs and select System Tasks Status.
- Search with Filter by Type Show All, and status Show All.
- Any Tasks listed in Running or Assigned State have not yet been completed.
How To Manually Assign System Tasks to Another Node
Run the following SQL Query:
update queued_tasks set process_node = '<node_name_to_assume_system_tasks_of_retired_node>' where process_node = '<retired_node_name>' and status in ( 'A', 'R' )
- "A" is assigned state
- "R" is running state