Skip to main content
Known Participant
June 7, 2011
Question

Large volume of connections and exceeding the process memory limit of your OS

  • June 7, 2011
  • 1 reply
  • 1134 views

It stands to reason that an OS would have a memory limit for the FMS  process.  I have a video chat app to which I may need to connect 300,000  or more concurrent users.  Has anyone done this?  Would this break the  bank?  What's the most you've ever had connected at once?

The video portion of my app goes through a good  CDN, so I don't think there's a problem there.  But my chat room is all  on one FMS instance.

I see something in FMS docs in "configuring performance features" that warns, "Adobe recommends that you ensure that your total system memory usage does not exceed the process limit of your OS".  Granted it's in the context of configuring media cache, but  wouldn't the same apply to chat room size if the numbers get high  enough?

    This topic has been closed for replies.

    1 reply

    Nikhil_Kalyan
    Participating Frequently
    June 7, 2011

    Hi,

    Thanks for trying FMS.

    I would not go in to the OS limitations of FMS process memory usage as it is definitely within its scope to do that, which you acknowledged as well.

    For any VOD case, we keep the FLV Cache for FMS to be 1/4th of the available RAM. Since yours is a video chat application, that would not affect much either.

    Are you using RTMP or RTMFP for your chat application, either way, per FMS box, the recommended max connections is not so high as your number, but i do not see any reason why it should not support, given you have enough resources to sustain it.

    Are you using FMS in its default installation configuration or did you make any changes to suit your video chat application ?

    If you know you would have so much of traffic, why don't you have more FMS boxes and balance the load.

    Known Participant
    June 9, 2011

    Thanks for your response.

    To answer your questions,

    1.  I'm using RTMP

    2.  FMS 4.0 out of the box

    3.  Didn't know I'd have this traffic volume.  Just sort of happened.

    Don't have 300,000 connections all the time.  Most times only 100-1,000.  But once in a blue moon a particular client wants to broadcast to really high numbers.  I'll have to handle it somehow.

    Let me simplify this to make it easier to answer.

    Suppose I made an FMS chat app (not video) and passed the link to 300,000 people.  Suppose I told them all to log on at 2:00 p.m. tomorrow and send a message.  If they all did, would my FMS instance crash?

    Suppose I then added something to the app.  Suppose I added an interactive poll. The poll pops up a question for the users like this:

    What's your favorite color?

    A. Red

    B. Blue

    C. Green

    When users answer the question, FMS relays the real time voting updates back to all the clients so they can watch the voting results tally as they happen.

    When all the users vote, will that crash the FMS instance?

    On your point about multiple FMS boxes, that sounds like it works for video streaming.  Edge origin would permit the sharing of video streams across multiple servers.  But how do you share and synchronize a "chat" or "poll" app in the same way.  If I send a message to FMS box 1, how do the others get it?

    Or is FMS not the best choice for non video apps (like chat and poll) in really high numbers?

    Nikhil_Kalyan
    Participating Frequently
    June 9, 2011

    Hi,

    Thanks for the details,

    Though FMS is intended to be the most suitable for video and live streaming, i don't see why it cannot fit for a chat application. The concept of Shared Objects on FMS serve this purpose, and it gives you the option to always move to video chat any time in the future.

    FMS will not crash as such for any of the cases you mentioned, given that the data transfer is also not high (no video/audio, and hence relatively less), the concurrent connections should not pose any problem.

    On a curious note, did you take a look at the recent features in FMS 4.0 where you have a new protocol called RTMFP on which you could build much better many-many chat applications in a robust way ?