Hi,

 

We’re currently in deployment of a multiplayer solution based on FMS. We’ve run into some problems and I’m just wondering wether any of these could become problems in Red 5 as well or if that will be built differently (ie correctly).

 

  1. Our FMS application loads quite a bit of XML from an application server and sends it to the Clients. This eventually crashes the FMS as the XML objects and it’s listeners are referencing each other whereby the garbage collector ignors them. We had to rewrite the asc code so that all XML is explicitly deleted as soon as it’s sent over to the Clients.
  2. The garbage collector isn’r run often enough. We have to keep track of the number of logins and XML loads and explicitly call application.gc() every now and then to prevent memory overflow.
  3. The http connections to the application server are never closed. This turned out to be a bug in a feature. The FMS can be set to use a connection pool. Only problem is that the pool isn’t used when connecting. The result is that each new connection is opened and added to the pool but never reused. When the server runs out of ports, the XML load fails. We had to turn off connection pooling to get around this.
  4. When using RTMPT the client sends idle packages every n timeunits (this is possibly done over RTMP too but I haven’t had a look at that traffic). Each package is incremently numbered. If a package is lost or get’s delayed so that the server recieves, for instance, 1,2,3,4,5,6,8, it returns a 500 and disconnects the client. We’re not sure that’s what’s actually happening, but we do know that this is the way the server behaves and that when we have around 1000 simultaneous connections, some of them receive a 500 and are disconnected. We’re analysing the traffic more closely now but the hypothesis seems beliavable enough.

 

So… I trust the garbage collector will be more solid in Red 5 which would take care of #1 and 2. If the connection pooling feature is added, I trust that it won’t be as poorly written as Adobe’s – that’s #3 taken care of. My worry is #4. Will Red 5 be able to handle packet loss/packet delays in a reasonable way instead of the Adobe way?

 

Sincerely,

 

Johan Öbrink

Owner/Developer

Man Machine

http://www.man-machine.se

_______________________________________________
Red5 mailing list
[email protected]
http://osflash.org/mailman/listinfo/red5_osflash.org

Reply via email to