I've been playing with Adobe's FDS2 (Flex Data Services), LCDS 2.5 (LiveCycle Data Services), and open source project Red5 to build the server part of a project I am working on.
I think FDS2 and LCDS are unnecessarily complex and tragically misdocumented. As most Java projects tend to be, these servers are built with layers and blocks of interlocking design patterns and abstractions which, in the end, confuses more than clarifies. While Adobe does put a lot more effort into documentation than the industry norm, they tend to be focused on the breadth and neglects depth in areas where deeper understanding is needed. Simple block diagrams are not enough to explain complex live ecosystem of components. Sketches and recipes of extensions are not enough to give developers the understanding necessary to build applications because there is more to an application than being just a collection of extensions.
Red5 suffers from much of the same mistakes except, being open source, it's relatively easier to figure things out. Its biggest problem is instability and unacceptable requirements and dependencies for production use.
Performance without stability is flatulence.
What I ended up doing is building from scratch just what I need using low-level components from Red5. More sweat but less headache.