Title: Need advice on XMLSocket architecture (1.5)
You might want to ask this on Flashcoders; people like Jobe Makar are the ones you want answering this.
 
When I connected to a message router in the past via .NET, we used the same port, and had 2 XMLSocket connections.  We utilized our own XML schema, and only paid attention to messages that matched our assigned client ID.

Example:
 
function onLoad(xml)
{
    if(xml.firstChild.attributes.id == _global.myID)
    {
        // go ahead and start parsing more data
    }
}
 
The only challenges we ran into:
- higher framerates mean less message processing time; stick to 18 or lower
- keep track of which data is the valid data; XMLSocket vs. a returning Remoting request
 
As far as scalability, XMLSocket itself rocks, but the back-end kept going down 15 times a day, and I'd have to ask the server guy to reboot it.  We didn't build it, but didn't have time to write our own.  Beyond the high framerate, never had any problems with Flash.
 
A project way before that using VB 6 to connect & C, we didn't even use XML, just strings:
 
function onData(str)
{
    if(str == "gonext")
    {
        // etc.
    }
}
 
This was a single app with a single socket, though, so no ID's for multiple clients was needed; it was merely a better way of communicating from VB to Flash at the time since ExternalInterface didn't exist, nor LoadVars, nor watch, and fscommand wouldn't scale for what we needed.
 
Both of which worked great.
   
----- Original Message -----
Sent: Friday, November 04, 2005 1:38 PM
Subject: [flexcoders] Need advice on XMLSocket architecture (1.5)

I have 100 fixed clients running a Flex 1.5 app on an intranet.  A Dot.Net integration tier maintains individual states for each client. The integration tier talks asynchronously to third party apps over async tcp sockets and even mail transport.  I had planned on a leisurely polling setup to get the clients updated with changes in state, but I now have a requirement for an update with minimum latency.

The messaging between clients and server is very low frequency (a few clients updated per minute) and very low size (a few k per update).

Since I have been unsuccessful at getting a “blocking” http service call working in dot.net, and since I now have some socket experience, I am leaning towards a true “push” connection using XMLSockets.  I see two approaches: 

On would be to have a separate port connection for each client with each client only getting their messages, the other would be a single port, where all clients would get all messages, and ignore those that were not theirs.

I think performance, reliability and simplicity are most important, and scalability not so much an issue.

Any suggestions, experiences, resources would be appreciated!!

Tracy



--
Flexcoders Mailing List
FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com




SPONSORED LINKS
Web site design development Software design and development Macromedia flex
Software development best practice


YAHOO! GROUPS LINKS




Reply via email to