Smart Client very slow in Java 7 vs. Java 6

Questions, answers, tips and ideas on Servoy Client

Smart Client very slow in Java 7 vs. Java 6

Postby SteveInLA » Mon Dec 10, 2012 11:25 pm

Is anyone else experiencing this? I am comparing the apparent speeds of operations of the same solution by running one client on one machine with Java 6 Update 37 and another client on a machine running Java 7 Update 9. Both clients are on the same network as the server and the server is running Java 7 Update 9. Without doing detailed speed test analysis, the client on the machine running Java 7 performs tasks about 10 times slower than the client on the machine running Java 6. Just for fun, I uninstalled Java 7 from the machine and installed Java 6 and the performance speeds up tremendously. This is bad because the main reason for upgrading our solutions from 4.1.7 to 6.1.3 was to be compatible with Java 7. Any suggestions are appreciated. Here is my pertinent server info:

Server Information
Servoy version 6.1.3 -releaseNumber 1424
Port used by RMI Registry: 4590
Repository version 42 (AA3E4050-4413-4F1E-933D-875281F3F246)

JVM Information
java.vm.name=Java HotSpot(TM) Client VM
java.version=1.7.0_09
java.vm.info=mixed mode
java.vm.vendor=Oracle Corporation

Steve in L.A.
SteveInLA
 
Posts: 220
Joined: Thu Jul 29, 2004 12:00 am
Location: Los Angeles, CA

Re: Smart Client very slow in Java 7 vs. Java 6

Postby swingman » Thu Dec 13, 2012 9:19 am

Hi Steve,

I have two systems on 6.1.3, Java 7 on client side (Mac OS X and Windows), and PostgreSQL 9.2.x. Servers on Mac OS X 10.7 and 10.8 with the older Java. We have not noticed this slowdown. However, we had some serious problems with speed on certain queries on 6.0.x (10 times slower). Updating the PostgreSQL driver to the latest version seem to have solved these.
Christian Batchelor
Certified Servoy Developer
Batchelor Associates Ltd, London, UK
http://www.batchelorassociates.co.uk

http://www.postgresql.org - The world's most advanced open source database.
User avatar
swingman
 
Posts: 1173
Joined: Wed Oct 01, 2003 10:20 am
Location: London

Re: Smart Client very slow in Java 7 vs. Java 6

Postby david » Fri Dec 14, 2012 8:44 pm

SteveInLA wrote:the client on the machine running Java 7 performs tasks about 10 times slower than the client on the machine running Java 6. Just for fun, I uninstalled Java 7 from the machine and installed Java 6 and the performance speeds up tremendously. This is bad because the main reason for upgrading our solutions from 4.1.7 to 6.1.3 was to be compatible with Java 7. Any suggestions are appreciated.


First of all, how are you on Servoy 4.x to begin with? Most of us skipped 4 since by the time we figured it all out, Servoy 5 was released :)

Non-answer but a suggestion: we converted up to 6.1.x specifically to upgrade our solutions from smart client to web client. Best thing we ever did. There a few quirks with the web client (specifically, hard core data entry is not as fast) and we've had to hack in a lot of client-side stuff -- but even our in-house deployments prefer web client over smart client.

It's amazing how much progress has been made with browser technologies in the past two years and it's still only at the beginning. And not having to even think about java on the client is a huge relief. Unless you have a specific reason to need java deployment, now is a good time to jump on the future of client-side technology. My $.02.
David Workman, Kabootit

Image
Everything you need to build great apps with Servoy
User avatar
david
 
Posts: 1724
Joined: Thu Apr 24, 2003 4:18 pm
Location: Washington, D.C.

Re: Smart Client very slow in Java 7 vs. Java 6

Postby SteveInLA » Thu Dec 20, 2012 10:07 pm

I am in the process of adding line-by-line logging to my navigation routine in the hopes of determining if there is something in particular that is slowing things down. So far, it seems that everything is overall slower in the Java 7 Smart Client than in the Java 6 Smart Client.

One thing I notice is that running the Smart Client from within Developer IS NOT SLOW for Java 7. Can someone clue me in to some of the things that are different between running the Smart Client from inside Developer vs. the Smart Client launched from a jnlp file? The obvious place to start is to disable the SSL, but are there other things to try?

david wrote:Unless you have a specific reason to need java deployment, now is a good time to jump on the future of client-side technology.


As much as I would like to move to the Web Client, I do have specific reasons for needing to stay with the Smart Client at this time.

Steve in L.A.
SteveInLA
 
Posts: 220
Joined: Thu Jul 29, 2004 12:00 am
Location: Los Angeles, CA

Re: Smart Client very slow in Java 7 vs. Java 6

Postby SteveInLA » Thu Dec 20, 2012 11:42 pm

Crud. Disabling SSL eliminates all the lag from the Java 7 Smart Client. What do I do now? I most definitely want to know that my data is transmitting securely.

Steve in L.A.
SteveInLA
 
Posts: 220
Joined: Thu Jul 29, 2004 12:00 am
Location: Los Angeles, CA

Re: Smart Client very slow in Java 7 vs. Java 6

Postby awvservoy » Fri Dec 21, 2012 2:14 pm

Hi Steve- take a closer look at your SSL configuration. We experienced a slowdown problem when moving from Servoy 4 to Servoy 5 where the application worked but far slower than was acceptable. We ultimately found we had a misconfiguration for SSL in our application_server/server/conf/server.xml file which was causing endless connects, disconnects and reconnects. The problem took a while to find as it was subtle, as the application itself wasn't disconnecting and reconnecting (from the application server point-of-view). We found it by monitoring Servoy connections using 'lsof' and noticing that even for one user the unix pids kept changing many times/second. We then found that NOT using SSL avoided the problem- which pointed us to the SSL misconfiguration issue. Once resolved, using SSL (we tunnel all connections over port 443) worked fine.

Not sure why a working SSL config for Java 6 users wouldn't behave the same for Java 7. I'm going to try Java 7 with our current deployment to see we experience the same thing; I'll let you know what I find.

Regards, Tony
Anthony Vitrano
ReadQ Technologies LLC
awvservoy
 
Posts: 20
Joined: Wed Dec 13, 2006 10:11 pm
Location: New York, NY USA

Re: Smart Client very slow in Java 7 vs. Java 6

Postby jcompagner » Fri Jan 04, 2013 3:33 pm

when running a client i haven't noticed or heard that a client is much slower in java 7.
Starting a client can be slower because some version of java 7 do log and check much more (especially the first download time) certificate stuff.
Johan Compagner
Servoy
User avatar
jcompagner
 
Posts: 7977
Joined: Tue May 27, 2003 7:26 pm
Location: The Internet

Re: Smart Client very slow in Java 7 vs. Java 6

Postby SteveInLA » Fri Jan 04, 2013 5:17 pm

Johan, it is not that Java 7 is slow, but Java 7 over an SSL secured connection is slow by a factor of about 20 times compared to Java 6 using the same SSL connection. I have redone all my SSL settings according to the instructions on the Servoy wiki and still have the same results. Unfortunately I am not a Java or an SSL expert so figuring out how to document this problem is taking some time. I just discovered how to turn on tracing in the Java console, so I should have more information about the nature of this problem soon.

Steve
SteveInLA
 
Posts: 220
Joined: Thu Jul 29, 2004 12:00 am
Location: Los Angeles, CA

Re: Smart Client very slow in Java 7 vs. Java 6

Postby SteveInLA » Tue Jan 08, 2013 10:34 pm

As an experiment, I did a fresh install of Servoy 6.1.3. The only changes made to the install was that I installed the it2Be Cryptor and Tools plugins as well as the JasperReports plugins. I left all the network settings set to their defaults, started the server and connected to my solution using the Java 7 client. The overall performance was as slow as it had been before reinstalling. I made one change to the server settings which was to uncheck the box for useSSL and reconnected. With useSSL turned off, the solution is as fast as I expect it to be. This tells me that enabling SSL is the culprit and not anything to do with my server.xml settings or my certificate. My next step is to set up my laptop up as a server so that I can see if it has something to do with my server and/or network and/or firewall.

Steve
SteveInLA
 
Posts: 220
Joined: Thu Jul 29, 2004 12:00 am
Location: Los Angeles, CA

Re: Smart Client very slow in Java 7 vs. Java 6

Postby jcompagner » Wed Jan 09, 2013 9:57 am

can you check your java preferences?
in the advanced section there are a lot of ssl related stuff like "online" checks
If you play with those what happens?
Maybe Java7 constantly does a online check at the moment a connection is being created...
Johan Compagner
Servoy
User avatar
jcompagner
 
Posts: 7977
Joined: Tue May 27, 2003 7:26 pm
Location: The Internet

Re: Smart Client very slow in Java 7 vs. Java 6

Postby swingman » Mon Feb 04, 2013 3:14 pm

Hi all,

I have just updated to the latest version of Java at a client all Mac OS X 10.6.8 and newer. Servoy 6.1.3, SSL on. The Server was running Java 1.6.0_37. Most the client machines had Java 7. All the Java 7 clients were taking ages to load and running really, really, slowly -- users complaining. Updated Java on the Server to latest Java 7. Then switched SocketFactory.tunnelConnectionMode from "2waysocket' to "http&socket" in Network Settings" on the server and restarted. Everything went back to normal speed. Not sure if it was the Java update or the tunnelConnectionMode which fixed this...
Christian Batchelor
Certified Servoy Developer
Batchelor Associates Ltd, London, UK
http://www.batchelorassociates.co.uk

http://www.postgresql.org - The world's most advanced open source database.
User avatar
swingman
 
Posts: 1173
Joined: Wed Oct 01, 2003 10:20 am
Location: London

Re: Smart Client very slow in Java 7 vs. Java 6

Postby g6699628 » Fri Jul 10, 2015 4:11 am

g6699628
 
Posts: 1
Joined: Fri Jul 10, 2015 4:11 am


Return to Servoy Client

Who is online

Users browsing this forum: No registered users and 3 guests