Skip to main content
Participant
April 12, 2007
Question

Flash Media Server on Clustered Servers

  • April 12, 2007
  • 1 reply
  • 377 views
Hello to all,
i am new to the Flash world and am trying to figure out if Flash Media Server Pro can be installed in a clustered server environment (active/passive). specifically:
1 - can it be set up so that when the primary server fails, the secondary server will take over any incoming requests?
2 - can this be done at the "Pro" license level?
3 - are two seperate licenses required for this, or is this usage (since it is any active/passive cluster) covered under a single license?

the items i found on the site are very specific to setting up Edge/Origin servers - but we are not looking at getting dedicated servers for this. we want to use our clustered web site servers.

with thanks for any help provided
rica
    This topic has been closed for replies.

    1 reply

    April 12, 2007
    There are a couple of ways you can do it, the best approach depends on the applications you're deploying.

    If we're talking about apps that just stream recorded video, and easy solution would be to provide the .swf with a list of host IP's or domains, and write a class that will try connecting to them in sequence. That way, if server A is down, the .swf will try server B, then server C and so on.

    If we're talking about live broadcast or chat sort of apps, you'd need a means of getting everyone into the right place, on the right server. That's a little more complex. Certianly do-able, but there's lots to consider.

    If you can describe your apps a little, I can offer some more ideas.

    You can do it with pro licenses, but for each server, you need a separate license. No way around that one.

    rica_caAuthor
    Participant
    April 13, 2007
    Hi JayCharles,
    thank you for your input.
    at this point we are looking at a newsgroup type site (a forum similar to this one - with much fewer users) that will support a few chat rooms.
    the app is being developed by a third party, this is all the information i have a the moment.
    i thank you again for any further input.
    rica
    April 13, 2007
    Since we're talking about a multiuser app (the chat), failover becomes a litte more complicated. In this case, we need to make sure that, as clients connect to the app, the are routed to the appropraite server. Think about this scenario:

    Users A and B enter a chat. During the chat, the primary server goes down, so clients A and B are moved to the backup server. A few minutes later, the primary server comes back on line. After that, client C connects to the chat. Since the primary server is up, client C connects to that one, but clients A and B are still on the backup server.

    So, we need a means of making sure there is only one instance of any given chat "room" at any time, and we need to somehow make sure inbound clients are routed to the appropraite server.

    What I like to do in situations like this is buid two applications. The first application is a "gatekeeper", which monitors all of the FMS servers in the cluster, and mantiains a list of active rooms (and their locations). When a client connects, they first connect to the gatekeeper, which informs the client of which server their chat room is running on. The client then disconnects from the gatekeeper, and connects to the chat room.

    Along with handling faliover, using an approach like this can also facilitate load balancing. By monitoring license capacity, the gatekeeper app can programatically assign chat rooms to servers based on the number of active connections on each FMS.