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).
- 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.
- 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.
- 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.
- 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