Streamezzo Rich Media Server is delivered as a package including all items required for deployment. You are supposed to select the best deployment strategy according to your platform requirements in terms of performance and usability. By default, Rich Media Server is deployed for make it easy to develop and to test Rich Media services.
Before it runs into highly available platforms, Rich Media Server must be tuned !!!
As any JEE enterprise application, Rich Media Server may run on very simple platform made of a single server. Such a platform is ready for testing Rich Media services without any availability or performance requirement. In order to provide best class end user experience, Rich Media Server is supposed to run on highly available platform.
|
| Figure: Rich Media Server highly available platform overview |
Highly available platform is made of 3 tiers:
Each tier is supposed to come with high availibity features. According to availability requirements, they have to provide at least fail-over and maybe full redundancy in order to eliminate every single point of failure.
Load-balancing tier is supposed to be made of a hardware load-balancer and software load-balancers such as Apache Web Server. Hardware load-balancer is supposed to forward HTTP requests to software load-balancers. Software load-balancers are supposed to forward HTTP requests to Rich Media Server cluster nodes using a specific transfer protocol depending on JEE application server. This protocol may provide advanced feature for improving connections management and load-balancing heuristic. So software load-balancers are optional but they provide advanced features for handling heavy traffic. JEE application servers should not receive HTTP requests directly, their connectors may not be fully compliant with HTTP standard. Web servers are supposed to be fully compliant with HTTP standard and they are better in handling requests towards static resources. Rich Media Server may have to be integrated into a architecture including some static resources to serve to end users.
Highly available platforms are supposed to be made of 2 RMS servers which are supposed to fill performance requirements if one of them crashes. Both RMS are supposed to share the same database which must also includes fail-over.
In this area, it possible to setup MySQL in such a way it supports fail-over, but it requires skills on integrator side. If we talk only about READ access from RMS, then it is quite simple. But if we need WRITE access from RMS, then it is very touchy. If integrator is not able to manage MySQL for high availability, then they should deploy Oracle, but here again, it requires advanced skills. Streamezzo is not supposed to provide any support for highly available database management system deployment.