David Marko
David Marko

Reputation: 2519

XPages terrible slowleness in DDE after adding several jars ... is it standard behaviour?

I have a quite large xpages project and now I have added some jars to the projects (9 jars via project explorer). After adding these jars to classpath cause that saving every xpage or custom control in DDE takes up do 25 seconds which is crazy (I have a quite fast iCore7 computer, 8GB RAM and working on local Domino server running on my laptop ... all latest 8.5.3).

When I remove these jars from classpath, the save time is back and below 1 sec. Adding these jars to classpath increases the save time up to 25 seconds. Is it normal behaviour? How to avoid this while still using jars?

Upvotes: 4

Views: 618

Answers (4)

Mark Leusink
Mark Leusink

Reputation: 3757

If the delay is caused by transferring the JAR's from the server to the client (as Simon O'Doherty described) you might consider developing in a local replica of the application.

I always work that way for larger apps: develop in a local replica, build or clean that local replica then refresh the application on the (local or remote) Domino server.

Another tip: if you develop this way you can also get a big performance gain if you replace your HDD with an SSD.

Upvotes: 1

David Marko
David Marko

Reputation: 2519

I did interesting observation here. Based on Simon D'Oherty advice I moved all jar files to lib/ext and suddenly there is no delay when saving xpage or control. When I put even one jar back to database, there is a delay with 'Building workspace' message. When moving all to lib/ext there is no 'Bulding workspace' message and delay anymore. But working this way is rather crappy as all developers and servers running application must keep all these jars which is almost imposible to maintain. IBM should fix this in database!!

Upvotes: 0

Gabriel Netto
Gabriel Netto

Reputation: 1828

Talked with the guys here developing an application that had a similar problem. They said that a particular jar was causing the whole site to slow it down. Maybe you can try adding them individually and see which one is causing the application to slow down.

Upvotes: 1

Simon O'Doherty
Simon O'Doherty

Reputation: 9359

When you store Jars in an NSF file the Notes/Domino has to detach them to add them to the classpath before compiling code. This is done each time they are called and if they are on the server then it has to transfer them to the client before detaching.

On a couple of small jars this isn't an issue (depending on frequency of being used). But if you have a large number of jars being called often you should instead put them into the "lib/ext" folder (eg. c:\notes\jvm\lib\ext).

This way they only get loaded into memory once when the Client/server starts up.

Let me know if this is what is happening and I will see if an SPR exists.

Upvotes: 2

Related Questions