PDA

View Full Version : Performance and persistant connections


demilio
10-08-2004, 06:14 AM
Hi.

I am evaluating Laszlo for a current project and had some questions about performance and scalability. We were originally planning on trying to use the persistant connections like the dashboard demo application uses for the chat portion. However, when reading the documentation (http://www.laszlosystems.com/lps-2.2/docs/guide/persistent_connection.html) it said that they are not production ready. Does anyone know any more about the problems with persistant connections and whether we can expect them to become more reliable in the future?

Thanks in advance for any help.

-Rob

whisperstorm
10-08-2004, 02:13 PM
I hear conflicting things too, however when I was there at the Laszlo offices, I believe they said that the docs are out of date in that respect, and that persistent connection should be ok now... Hopefully someone from Laszlo will offer a comment?

hqm
10-08-2004, 04:00 PM
I believe the issue is that for scalability there needs to be a way to support persistent connections across multiple servers, and that is not currently implemented. For a single server, the persistent connections should be usable, give it a try.

keats76
10-09-2004, 07:05 AM
Could anyone from Laszlo comment on any persistent connection limits that might exist? For example, how many concurrent users could be logged into the chat at once before performance degridation became an issue.

Are there future plans for multiserver load balancing for persistent connections?

Thanks,
Mike

demilio
10-12-2004, 05:24 AM
Bump this up to the top to hopefully get some dev input.

demilio
10-14-2004, 06:54 AM
Any devs around?

jsundman
10-14-2004, 11:00 AM
I will try to get a competent architect to respond. Please understand that the response may not be immediate.

I can tell you, however, that the injunction against using perssitent connetion in production environments is current (i.e. not outdated). Henry is correct that the problems in the current implementation have to do with scalability.

demilio
10-14-2004, 11:12 AM
Thank you very much jsundman. We will be making our decision on Lazslo soon and this is currently our only outstanding issue regarding the platform.

Everything else has been very impressive so far. Nice product guys.

demilio
10-18-2004, 06:13 AM
I just reread the post about scalability being the problem and had another question that can probably be best illustrated through an example.

Our application will consist of something similar to chat groups, each of which should have no more than 16 or so users. There is nothing that needs to be shared between groups, just between the users in the group. Couldn't I scale to the desired number of groups by round-robin'ing the groups to different servers? So instead of clustering my servers together, I just have the users hard tied to a single app server?

In a lot of ways this is a desirable solution anyways because otherwise we would have to design a way for two servers in a cluster to communicate (RMI, database, etc) if two users in the same group ended up with persistant connections on different servers in a cluster. If we guarantee that users in the same group are always connected to the same server, they can communicate in memory.

Is there any other potential pitfalls with persistant connections that I might be missing?

Thanks again for your help.

mozammel8435
10-31-2006, 10:30 PM
I'm new to laszlo, and want to use it for one of my chat application. Initially my user base will not exceed 100. The warning regarding using the 'Persistance Connection' is still there in the documentation, and that's why I seek some help.

I can develop my application either using the given state of Persistance connection, or I can go for a pull based architecture and force the chat clients to pull the contents from the server. Which way will be more applicable?

Thanks in advance,
- Mozammel

whisperstorm
11-01-2006, 05:52 AM
If you wait a few days you could instead use the javascript API being built on top of AOL IM:

http://slayeroffice.com/archives/?p=198

mozammel8435
11-01-2006, 10:15 PM
Hi whisperstorm:

Would it force me to use AIM ids? I mean, I'll have to go through AIM network, right?

- Mozammel

antun
11-14-2006, 09:36 AM
You can certainly use the persistent connection feature that's in OpenLaszlo 3.3.3 for deployment; it has been used on successfully-deployed production web sites.

There are two known issues with the persistent connection:


The persistent connection is not indefinitely scalable. The OpenLaszlo Server can be clustered, but the persistent connection piece can not. For large deployments, the open-source P.C. is not practical.
Browser connections in Internet Explorer. IE on windows (versions 5 and 6; not sure about v7) has two browser connections available to it. The P.C. uses one of these, and makes it unavailable while the P.C. is connected. There's no immediate harm here. The problem is that if you open another browser window, by default IE will try to open the same URL in the new window. So if your application is set up to open a P.C. at init time, you could theoretically lock up both of your browsers HTTP connections, which causes that instance of IE to hang.


I don't have a maximum number of users that the P.C. will support; that depends on how much traffic will be sent to each user.

The second issue is relatively easy to work around: you could have the app check (using a bit of browser JavaScript) to see whether it's the only instance of that app in any window before using the persistent connection. The second issue is also not much of a problem on Firefox, because it has 4 HTTP connections, so you'd be OK if you hit "Ctrl+N" to get a new window for the first couple of times.

Hope this helps.

-Antun

Arabian
11-15-2006, 12:40 AM
You can certainly use the persistent connection feature that's in OpenLaszlo 3.3.3 for deployment; it has been used on successfully-deployed production web sites.

Hope this helps.

-Antun


Antun, very good news.

What is the status in Leagls? Did you enhance it since 3.3.3?
We will use proxied app to connect to IRC server which has few hundreds in the channels user may join.

This is very important issue for us. :confused: