Description
- In the cluster the Master handles all database related actions.
- In the master database you assign conference rooms to certain slaves.
- Slaves only host conference rooms.
- The slaves handle all RTMP related traffic.
- All HTTP related traffic is handled from the master.
- The master itself can also act as slave, in that case he does of course not need to sync his data to the master.
![Cluster Master Slave Diagram](/confluence/download/attachments/30740712/Cluster%20Master%20Slave%20Diagram.png?version=6&modificationDate=1351574616000&api=v2)
Flow
![Flow Cluster Master-Slave API](/confluence/download/attachments/30740712/Flow%20Cluster%20Master-Slave%20API.png?version=5&modificationDate=1351577890000&api=v2)
Master Slave SOAP/REST API
Slave has configuration values:
- cluster.isSlave ("true", or 1 to enable slave)
- cluster.master.host (IP/host of master)
- cluster.master.http.port (Http port of master)
- cluster.master.soap.user (SOAP User for accessing the API on master)
- cluster.master.soap.pass (SOAP Pass for accessing the API on master)
In the Spring configuration you can also configure the time in milliseconds for the ping to the master.
SOAP REST API calls:
Name |
Description |
Link |
---|---|---|
ping |
master is noitified by slave, includes slave userload |
|
addFlvRecording |
master is notified by slave about new recording, includes recording meta data |
Master to slave communication:
After master receives addFlvRecording via SOAP, Master does load via HTTP the recordings to the master file-system.
As long as the sync to the master database is in progress, the recording UI has to show a message if the user clicks on the recording in the UI.