November 10, 2011

WMSPanel architecture from scalability, security and usability perspectives


When we initially started working on system architecture our main ideas were like described below. Note that the industry term "design" often refers to "architecture" and so will we.
  • Make our system as secure as possible. Security is a very complex task in case when your servers are accessible from Internet. When we started to think about WMSPanel development we checked current solutions publicly available and found out that most of them were desktop applications. From technically point of view this means that desktop application requests information from media servers and presents to a user. So media server should seat and wait for user request and provide necessary information. Most solutions install RDMS on media servers to save and process statistic for the media server. Currently almost all analytic and control media solutions have been moved to the web. But almost all of them still have old design. Their control panels initiate connections to media servers and load logs and perform server related operations. This is a very pure POOL system architecture that forces your system administrator to add additional rules to open additional control ports on media server. In additional your web site cannot process media server data when it want to send it to you. Media Server should seat and wait when web site is ready to call it. In addition, a "pool" architecture has a very bad scalability. If you have 1000 servers you need to call all of them and you should have very clever scheduler to process servers in time. Our solution has a PUSH architecture. When Media Server is ready to push some new data to a panel, it just does that. If there's nothing to say - it can stop sending for some time. In addition, our clients' admins don't have to open additional control ports. We also use industry proven HTTPS protocol to send our data to a panel. We don't even have an option to use HTTP to do that. Both wmspanel.com and on-site client's installations MUST have a valid SSL certificate and the system doesn't have an option to suppress this. Your data will not be accidentally sent to a wrong server or cannot be cought and decrypted. Server registration procedure is very secure as well and use HTTPS to register server. Solution accept only valid certificate during registration. Panel web-site use the same certificate so when you want to work with your servers you are under the shield as well.
  • Make installation process as simple as possible. We don't want our clients' admins to play with configs, to manually copy solution libraries etc. We tried to do all necessary things during the installation. We are proud that we spent a lot of time but made installation process as simple, clear and secure as it is.
  • Support all versions of media servers we integrate with. Support them on all platforms where media servers works for all supported architectures. Currently we support Windows Media Server and Wowza Media Server. This means that if you have one or both you can use our solution regardless of their versions.
You can already tell that our architecture goals were achieved in current system implementation.

Please also examine our current cloud architecture.

No comments:

Post a Comment