Skip to main content
Participating Frequently
February 19, 2008
Answered

FMS origins in cluster

  • February 19, 2008
  • 2 replies
  • 519 views
Hi,
I need to setup currently only 2 FMS servers. I want used both (in future more FMS) like "origin servers" It will be used for 1 application (chat and videochat application) with hundreds clients, so I need same objects, SharedObjects a list of clients at each FMS server. Is it possible or I will have to use edge+origin?
Thanks.
Leoš
    This topic has been closed for replies.
    Correct answer KevinStreeter
    It is definitely possible to do this. You will need to create a proxy application that runs on each of your FMS servers that are to act as an edge. Each proxy application will need to create a create a connection (or multiple connections) to the FMS that is acting as an origin. You will need to relay changes to the shared objects running on the "edge" servers up to the "origin", and the "origin" will need to propogate these changes to the other "edges".

    The biggest challenge you will have will be dealing with race conditions between the shared objects in the distributed applications. You will need to use some kind of transaction id to identify conflicts, and you will need a policy to resolve the conflicts. It may be easier in this situation to simulate shared objects on the edges by using RPC calls that are proxied up to the origin.

    If this is starting to sound like alot of work...it is! I highly recommend using FMS's own edge-origin feature which will handle all of these details for you, and give you the added benefit of content caching, administration, etc. The FMS is powerful enough to implement this behavior, but we built the edge origin to save you the trouble of implementing yourself.

    Good Luck!

    2 replies

    KevinStreeterCorrect answer
    Participating Frequently
    February 19, 2008
    It is definitely possible to do this. You will need to create a proxy application that runs on each of your FMS servers that are to act as an edge. Each proxy application will need to create a create a connection (or multiple connections) to the FMS that is acting as an origin. You will need to relay changes to the shared objects running on the "edge" servers up to the "origin", and the "origin" will need to propogate these changes to the other "edges".

    The biggest challenge you will have will be dealing with race conditions between the shared objects in the distributed applications. You will need to use some kind of transaction id to identify conflicts, and you will need a policy to resolve the conflicts. It may be easier in this situation to simulate shared objects on the edges by using RPC calls that are proxied up to the origin.

    If this is starting to sound like alot of work...it is! I highly recommend using FMS's own edge-origin feature which will handle all of these details for you, and give you the added benefit of content caching, administration, etc. The FMS is powerful enough to implement this behavior, but we built the edge origin to save you the trouble of implementing yourself.

    Good Luck!
    Participating Frequently
    February 20, 2008
    I was thinking about create "proxy" application, that will handle every changes... But it is a lot of work
    So, when I will have only 2 FMS servers - 1 edge and 1 origin, will I get any benefit? I see no redundancy and no increases of clients capacity (or very small) . I guess that for redundancy I will need minimal 4 servers (2 edges and 2 origins). am I right? And when FMS cost c. 7,222$ (in our country) it isnt just cheap for start
    Leoš
    Participating Frequently
    February 19, 2008
    I can tell you that it is possible :) That said, I suppose you are looking for information on this type of setup; but you would need to explain some of the details of how your application is going to work.