|
View:
New views
5 Messages
—
Rating Filter:
Alert me
|
|
|
T5: ClasspathResource and performanceHello out there,
We're running a quite busy website with tapestry 5.0.18 and we're hitting a performance problem with the ClasspathResource class. We're using classpath asset and none of them is localised. For each hit on a page using a classpath asset, we end having 2 missed queries on the ClassLoader for potential localized version of the asset. It does not really slow down the application throughput but we end with an __huge__ CPU consumption. The javacore stack shows numerous threads scanning jar files: 3XMTHREADINFO "[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'" (TID:0x3700E400, sys_thread_t:0x3393D030, state:B, native ID:0x009AB0B3) prio=5 4XESTACKTRACE at java/util/zip/ZipFile.getEntry(ZipFile.java:287(Compiled Code)) 4XESTACKTRACE at java/util/jar/JarFile.getEntry(JarFile.java:283(Compiled Code)) 4XESTACKTRACE at java/util/jar/JarFile.getJarEntry(JarFile.java:266(Compiled Code)) 4XESTACKTRACE at sun/misc/URLClassPath$JarLoader.getResource(URLClassPath.java:949(Compiled Code)) 4XESTACKTRACE at sun/misc/URLClassPath$JarLoader.findResource(URLClassPath.java:938(Compiled Code)) 4XESTACKTRACE at sun/misc/URLClassPath.findResource(URLClassPath.java:299(Compiled Code)) 4XESTACKTRACE at java/net/URLClassLoader$3.run(URLClassLoader.java:784(Compiled Code)) 4XESTACKTRACE at java/security/AccessController.doPrivileged(AccessController.java:219) 4XESTACKTRACE at java/net/URLClassLoader.findResource(URLClassLoader.java:781(Compiled Code)) 4XESTACKTRACE at java/lang/ClassLoader.getResource(ClassLoader.java:420(Compiled Code)) 4XESTACKTRACE at java/lang/ClassLoader.getResource(ClassLoader.java:415(Compiled Code)) 4XESTACKTRACE at java/lang/ClassLoader.getResource(ClassLoader.java:415(Compiled Code)) 4XESTACKTRACE at weblogic/utils/classloaders/GenericClassLoader.getResourceInternal(GenericClassLoader.java:170(Compiled Code)) 4XESTACKTRACE at weblogic/utils/classloaders/GenericClassLoader.getResource(GenericClassLoader.java:187(Compiled Code)) 4XESTACKTRACE at weblogic/utils/classloaders/FilteringClassLoader.getResourceInternal(FilteringClassLoader.java:89(Compiled Code)) 4XESTACKTRACE at weblogic/utils/classloaders/GenericClassLoader.getResourceInternal(GenericClassLoader.java:155(Compiled Code)) 4XESTACKTRACE at weblogic/utils/classloaders/GenericClassLoader.getResource(GenericClassLoader.java:187(Compiled Code)) 4XESTACKTRACE at java/lang/ClassLoader.getResource(ClassLoader.java:415(Compiled Code)) 4XESTACKTRACE at weblogic/utils/classloaders/GenericClassLoader.getResource(GenericClassLoader.java:190(Compiled Code)) 4XESTACKTRACE at weblogic/utils/classloaders/ChangeAwareClassLoader.getResource(ChangeAwareClassLoader.java:118(Compiled Code)) 4XESTACKTRACE at org/apache/tapestry5/ioc/internal/util/ClasspathResource.toURL(ClasspathResource.java:59(Compiled Code)) 4XESTACKTRACE at org/apache/tapestry5/ioc/internal/util/AbstractResource.exists(AbstractResource.java:137(Compiled Code)) 4XESTACKTRACE at org/apache/tapestry5/ioc/internal/util/AbstractResource.forLocale(AbstractResource.java:100(Compiled Code)) 4XESTACKTRACE at org/apache/tapestry5/internal/services/AssetSourceImpl.findRelativeAsset(AssetSourceImpl.java:99(Compiled Code)) 4XESTACKTRACE at org/apache/tapestry5/internal/services/AssetSourceImpl.getAsset(AssetSourceImpl.java:93(Compiled Code)) 4XESTACKTRACE at $AssetSource_124955c0e4c.getAsset($AssetSource_124955c0e4c.java(Compiled Code)) 4XESTACKTRACE at org/apache/tapestry5/internal/transform/AbstractIncludeAssetWorker$1.perform(AbstractIncludeAssetWorker.java:79(Compiled Code)) 4XESTACKTRACE at fr/poleemploi/d2i/tapestry/navigation/unifiee/components/Bandeau.setupRender(Bandeau.java(Compiled Code)) The stack comes from weblogic/aix run but the problem is the same on other platforms as well. Does anyone has ever experienced such problems ? The performance penalty seems to be located in the AbstractResource.forLocale() method, especially the potential.exists() call. This part of code haven't evolved with the 5.1.x version. Does anybody have any idea on how to get around this problem ? Thanks in advance -- ChristianZen --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscribe@... For additional commands, e-mail: users-help@... |
|
|
Re: T5: ClasspathResource and performanceDoesn't limiting the supported locales to just the ones you support help?
http://tapestry.apache.org/tapestry5.0/guide/conf.html Uli Am 29.10.2009 19:39 schrieb Christiansen Merel: > Hello out there, > > We're running a quite busy website with tapestry 5.0.18 and we're > hitting a performance problem with the ClasspathResource class. > > We're using classpath asset and none of them is localised. For each > hit on a page using a classpath asset, we end having 2 missed queries > on the ClassLoader for potential localized version of the asset. It > does not really slow down the application throughput but we end with > an __huge__ CPU consumption. > > The javacore stack shows numerous threads scanning jar files: > > 3XMTHREADINFO "[ACTIVE] ExecuteThread: '2' for queue: > 'weblogic.kernel.Default (self-tuning)'" (TID:0x3700E400, > sys_thread_t:0x3393D030, state:B, native ID:0x009AB0B3) prio=5 > 4XESTACKTRACE at > java/util/zip/ZipFile.getEntry(ZipFile.java:287(Compiled Code)) > 4XESTACKTRACE at > java/util/jar/JarFile.getEntry(JarFile.java:283(Compiled Code)) > 4XESTACKTRACE at > java/util/jar/JarFile.getJarEntry(JarFile.java:266(Compiled Code)) > 4XESTACKTRACE at > sun/misc/URLClassPath$JarLoader.getResource(URLClassPath.java:949(Compiled > Code)) > 4XESTACKTRACE at > sun/misc/URLClassPath$JarLoader.findResource(URLClassPath.java:938(Compiled > Code)) > 4XESTACKTRACE at > sun/misc/URLClassPath.findResource(URLClassPath.java:299(Compiled > Code)) > 4XESTACKTRACE at > java/net/URLClassLoader$3.run(URLClassLoader.java:784(Compiled Code)) > 4XESTACKTRACE at > java/security/AccessController.doPrivileged(AccessController.java:219) > 4XESTACKTRACE at > java/net/URLClassLoader.findResource(URLClassLoader.java:781(Compiled > Code)) > 4XESTACKTRACE at > java/lang/ClassLoader.getResource(ClassLoader.java:420(Compiled Code)) > 4XESTACKTRACE at > java/lang/ClassLoader.getResource(ClassLoader.java:415(Compiled Code)) > 4XESTACKTRACE at > java/lang/ClassLoader.getResource(ClassLoader.java:415(Compiled Code)) > 4XESTACKTRACE at > weblogic/utils/classloaders/GenericClassLoader.getResourceInternal(GenericClassLoader.java:170(Compiled > Code)) > 4XESTACKTRACE at > weblogic/utils/classloaders/GenericClassLoader.getResource(GenericClassLoader.java:187(Compiled > Code)) > 4XESTACKTRACE at > weblogic/utils/classloaders/FilteringClassLoader.getResourceInternal(FilteringClassLoader.java:89(Compiled > Code)) > 4XESTACKTRACE at > weblogic/utils/classloaders/GenericClassLoader.getResourceInternal(GenericClassLoader.java:155(Compiled > Code)) > 4XESTACKTRACE at > weblogic/utils/classloaders/GenericClassLoader.getResource(GenericClassLoader.java:187(Compiled > Code)) > 4XESTACKTRACE at > java/lang/ClassLoader.getResource(ClassLoader.java:415(Compiled Code)) > 4XESTACKTRACE at > weblogic/utils/classloaders/GenericClassLoader.getResource(GenericClassLoader.java:190(Compiled > Code)) > 4XESTACKTRACE at > weblogic/utils/classloaders/ChangeAwareClassLoader.getResource(ChangeAwareClassLoader.java:118(Compiled > Code)) > 4XESTACKTRACE at > org/apache/tapestry5/ioc/internal/util/ClasspathResource.toURL(ClasspathResource.java:59(Compiled > Code)) > 4XESTACKTRACE at > org/apache/tapestry5/ioc/internal/util/AbstractResource.exists(AbstractResource.java:137(Compiled > Code)) > 4XESTACKTRACE at > org/apache/tapestry5/ioc/internal/util/AbstractResource.forLocale(AbstractResource.java:100(Compiled > Code)) > 4XESTACKTRACE at > org/apache/tapestry5/internal/services/AssetSourceImpl.findRelativeAsset(AssetSourceImpl.java:99(Compiled > Code)) > 4XESTACKTRACE at > org/apache/tapestry5/internal/services/AssetSourceImpl.getAsset(AssetSourceImpl.java:93(Compiled > Code)) > 4XESTACKTRACE at > $AssetSource_124955c0e4c.getAsset($AssetSource_124955c0e4c.java(Compiled > Code)) > 4XESTACKTRACE at > org/apache/tapestry5/internal/transform/AbstractIncludeAssetWorker$1.perform(AbstractIncludeAssetWorker.java:79(Compiled > Code)) > 4XESTACKTRACE at > fr/poleemploi/d2i/tapestry/navigation/unifiee/components/Bandeau.setupRender(Bandeau.java(Compiled > Code)) > > The stack comes from weblogic/aix run but the problem is the same on > other platforms as well. > > Does anyone has ever experienced such problems ? > > The performance penalty seems to be located in the > AbstractResource.forLocale() method, especially the potential.exists() > call. This part of code haven't evolved with the 5.1.x version. > > Does anybody have any idea on how to get around this problem ? > > Thanks in advance > > -- > ChristianZen > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscribe@... > For additional commands, e-mail: users-help@... > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscribe@... For additional commands, e-mail: users-help@... |
|
|
Re: T5: ClasspathResource and performanceHello
i have already encounter this kind of problem, we solved it by using a decorator to cache asset access with something like, it was for Tapestry 5.0.18 : public class AssetSourceCacheDecorator implements AssetSource { private final Map<MultiKey, *Asset*> cache = CollectionFactory.newConcurrentMap(); private final AssetSource delegate; public AssetSourceCacheDecorator(AssetSource delegate) { this.delegate = delegate; } public *Asset* getAsset(Resource baseResource, String path, Locale locale) { MultiKey key = new MultiKey(path, locale); if (cache.get(key) == null) { * Asset* *asset* = delegate.getAsset(baseResource, path, locale); cache.put(key, *asset*); return *asset*; } return cache.get(key); } public *Asset* getClasspathAsset(String path) { return this.getClasspathAsset(path, null); } public *Asset* getClasspathAsset(String path, Locale locale) { return this.getAsset(null, path, locale); } } Regards, Christophe. 2009/10/29 Christiansen Merel <c.merel@...> > Hello out there, > > We're running a quite busy website with tapestry 5.0.18 and we're > hitting a performance problem with the ClasspathResource class. > > We're using classpath asset and none of them is localised. For each > hit on a page using a classpath asset, we end having 2 missed queries > on the ClassLoader for potential localized version of the asset. It > does not really slow down the application throughput but we end with > an __huge__ CPU consumption. > > The javacore stack shows numerous threads scanning jar files: > > 3XMTHREADINFO "[ACTIVE] ExecuteThread: '2' for queue: > 'weblogic.kernel.Default (self-tuning)'" (TID:0x3700E400, > sys_thread_t:0x3393D030, state:B, native ID:0x009AB0B3) prio=5 > 4XESTACKTRACE at > java/util/zip/ZipFile.getEntry(ZipFile.java:287(Compiled Code)) > 4XESTACKTRACE at > java/util/jar/JarFile.getEntry(JarFile.java:283(Compiled Code)) > 4XESTACKTRACE at > java/util/jar/JarFile.getJarEntry(JarFile.java:266(Compiled Code)) > 4XESTACKTRACE at > sun/misc/URLClassPath$JarLoader.getResource(URLClassPath.java:949(Compiled > Code)) > 4XESTACKTRACE at > sun/misc/URLClassPath$JarLoader.findResource(URLClassPath.java:938(Compiled > Code)) > 4XESTACKTRACE at > sun/misc/URLClassPath.findResource(URLClassPath.java:299(Compiled > Code)) > 4XESTACKTRACE at > java/net/URLClassLoader$3.run(URLClassLoader.java:784(Compiled Code)) > 4XESTACKTRACE at > java/security/AccessController.doPrivileged(AccessController.java:219) > 4XESTACKTRACE at > java/net/URLClassLoader.findResource(URLClassLoader.java:781(Compiled > Code)) > 4XESTACKTRACE at > java/lang/ClassLoader.getResource(ClassLoader.java:420(Compiled Code)) > 4XESTACKTRACE at > java/lang/ClassLoader.getResource(ClassLoader.java:415(Compiled Code)) > 4XESTACKTRACE at > java/lang/ClassLoader.getResource(ClassLoader.java:415(Compiled Code)) > 4XESTACKTRACE at > > weblogic/utils/classloaders/GenericClassLoader.getResourceInternal(GenericClassLoader.java:170(Compiled > Code)) > 4XESTACKTRACE at > > weblogic/utils/classloaders/GenericClassLoader.getResource(GenericClassLoader.java:187(Compiled > Code)) > 4XESTACKTRACE at > > weblogic/utils/classloaders/FilteringClassLoader.getResourceInternal(FilteringClassLoader.java:89(Compiled > Code)) > 4XESTACKTRACE at > > weblogic/utils/classloaders/GenericClassLoader.getResourceInternal(GenericClassLoader.java:155(Compiled > Code)) > 4XESTACKTRACE at > > weblogic/utils/classloaders/GenericClassLoader.getResource(GenericClassLoader.java:187(Compiled > Code)) > 4XESTACKTRACE at > java/lang/ClassLoader.getResource(ClassLoader.java:415(Compiled Code)) > 4XESTACKTRACE at > > weblogic/utils/classloaders/GenericClassLoader.getResource(GenericClassLoader.java:190(Compiled > Code)) > 4XESTACKTRACE at > > weblogic/utils/classloaders/ChangeAwareClassLoader.getResource(ChangeAwareClassLoader.java:118(Compiled > Code)) > 4XESTACKTRACE at > > org/apache/tapestry5/ioc/internal/util/ClasspathResource.toURL(ClasspathResource.java:59(Compiled > Code)) > 4XESTACKTRACE at > > org/apache/tapestry5/ioc/internal/util/AbstractResource.exists(AbstractResource.java:137(Compiled > Code)) > 4XESTACKTRACE at > > org/apache/tapestry5/ioc/internal/util/AbstractResource.forLocale(AbstractResource.java:100(Compiled > Code)) > 4XESTACKTRACE at > > org/apache/tapestry5/internal/services/AssetSourceImpl.findRelativeAsset(AssetSourceImpl.java:99(Compiled > Code)) > 4XESTACKTRACE at > > org/apache/tapestry5/internal/services/AssetSourceImpl.getAsset(AssetSourceImpl.java:93(Compiled > Code)) > 4XESTACKTRACE at > $AssetSource_124955c0e4c.getAsset($AssetSource_124955c0e4c.java(Compiled > Code)) > 4XESTACKTRACE at > > org/apache/tapestry5/internal/transform/AbstractIncludeAssetWorker$1.perform(AbstractIncludeAssetWorker.java:79(Compiled > Code)) > 4XESTACKTRACE at > > fr/poleemploi/d2i/tapestry/navigation/unifiee/components/Bandeau.setupRender(Bandeau.java(Compiled > Code)) > > The stack comes from weblogic/aix run but the problem is the same on > other platforms as well. > > Does anyone has ever experienced such problems ? > > The performance penalty seems to be located in the > AbstractResource.forLocale() method, especially the potential.exists() > call. This part of code haven't evolved with the 5.1.x version. > > Does anybody have any idea on how to get around this problem ? > > Thanks in advance > > -- > ChristianZen > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscribe@... > For additional commands, e-mail: users-help@... > > |
|
|
Re: T5: ClasspathResource and performanceAlso on there is the "tapestry.file-check-interval" which specifies how
long Tapestry should wait before rechecking for changes. In production, I set that to "1y" because the files aren't going to change. However I don't know if this affects asset loading or not, but I *think* that once the first hit returns null it won't keep checking? It's worth a try and it certainly won't harm. Ulrich Stärk wrote: > Doesn't limiting the supported locales to just the ones you support help? > > http://tapestry.apache.org/tapestry5.0/guide/conf.html > > Uli > > Am 29.10.2009 19:39 schrieb Christiansen Merel: >> Hello out there, >> >> We're running a quite busy website with tapestry 5.0.18 and we're >> hitting a performance problem with the ClasspathResource class. >> >> We're using classpath asset and none of them is localised. For each >> hit on a page using a classpath asset, we end having 2 missed queries >> on the ClassLoader for potential localized version of the asset. It >> does not really slow down the application throughput but we end with >> an __huge__ CPU consumption. >> >> The javacore stack shows numerous threads scanning jar files: >> >> 3XMTHREADINFO "[ACTIVE] ExecuteThread: '2' for queue: >> 'weblogic.kernel.Default (self-tuning)'" (TID:0x3700E400, >> sys_thread_t:0x3393D030, state:B, native ID:0x009AB0B3) prio=5 >> 4XESTACKTRACE at >> java/util/zip/ZipFile.getEntry(ZipFile.java:287(Compiled Code)) >> 4XESTACKTRACE at >> java/util/jar/JarFile.getEntry(JarFile.java:283(Compiled Code)) >> 4XESTACKTRACE at >> java/util/jar/JarFile.getJarEntry(JarFile.java:266(Compiled Code)) >> 4XESTACKTRACE at >> sun/misc/URLClassPath$JarLoader.getResource(URLClassPath.java:949(Compiled >> >> Code)) >> 4XESTACKTRACE at >> sun/misc/URLClassPath$JarLoader.findResource(URLClassPath.java:938(Compiled >> >> Code)) >> 4XESTACKTRACE at >> sun/misc/URLClassPath.findResource(URLClassPath.java:299(Compiled >> Code)) >> 4XESTACKTRACE at >> java/net/URLClassLoader$3.run(URLClassLoader.java:784(Compiled Code)) >> 4XESTACKTRACE at >> java/security/AccessController.doPrivileged(AccessController.java:219) >> 4XESTACKTRACE at >> java/net/URLClassLoader.findResource(URLClassLoader.java:781(Compiled >> Code)) >> 4XESTACKTRACE at >> java/lang/ClassLoader.getResource(ClassLoader.java:420(Compiled Code)) >> 4XESTACKTRACE at >> java/lang/ClassLoader.getResource(ClassLoader.java:415(Compiled Code)) >> 4XESTACKTRACE at >> java/lang/ClassLoader.getResource(ClassLoader.java:415(Compiled Code)) >> 4XESTACKTRACE at >> weblogic/utils/classloaders/GenericClassLoader.getResourceInternal(GenericClassLoader.java:170(Compiled >> >> Code)) >> 4XESTACKTRACE at >> weblogic/utils/classloaders/GenericClassLoader.getResource(GenericClassLoader.java:187(Compiled >> >> Code)) >> 4XESTACKTRACE at >> weblogic/utils/classloaders/FilteringClassLoader.getResourceInternal(FilteringClassLoader.java:89(Compiled >> >> Code)) >> 4XESTACKTRACE at >> weblogic/utils/classloaders/GenericClassLoader.getResourceInternal(GenericClassLoader.java:155(Compiled >> >> Code)) >> 4XESTACKTRACE at >> weblogic/utils/classloaders/GenericClassLoader.getResource(GenericClassLoader.java:187(Compiled >> >> Code)) >> 4XESTACKTRACE at >> java/lang/ClassLoader.getResource(ClassLoader.java:415(Compiled Code)) >> 4XESTACKTRACE at >> weblogic/utils/classloaders/GenericClassLoader.getResource(GenericClassLoader.java:190(Compiled >> >> Code)) >> 4XESTACKTRACE at >> weblogic/utils/classloaders/ChangeAwareClassLoader.getResource(ChangeAwareClassLoader.java:118(Compiled >> >> Code)) >> 4XESTACKTRACE at >> org/apache/tapestry5/ioc/internal/util/ClasspathResource.toURL(ClasspathResource.java:59(Compiled >> >> Code)) >> 4XESTACKTRACE at >> org/apache/tapestry5/ioc/internal/util/AbstractResource.exists(AbstractResource.java:137(Compiled >> >> Code)) >> 4XESTACKTRACE at >> org/apache/tapestry5/ioc/internal/util/AbstractResource.forLocale(AbstractResource.java:100(Compiled >> >> Code)) >> 4XESTACKTRACE at >> org/apache/tapestry5/internal/services/AssetSourceImpl.findRelativeAsset(AssetSourceImpl.java:99(Compiled >> >> Code)) >> 4XESTACKTRACE at >> org/apache/tapestry5/internal/services/AssetSourceImpl.getAsset(AssetSourceImpl.java:93(Compiled >> >> Code)) >> 4XESTACKTRACE at >> $AssetSource_124955c0e4c.getAsset($AssetSource_124955c0e4c.java(Compiled >> Code)) >> 4XESTACKTRACE at >> org/apache/tapestry5/internal/transform/AbstractIncludeAssetWorker$1.perform(AbstractIncludeAssetWorker.java:79(Compiled >> >> Code)) >> 4XESTACKTRACE at >> fr/poleemploi/d2i/tapestry/navigation/unifiee/components/Bandeau.setupRender(Bandeau.java(Compiled >> >> Code)) >> >> The stack comes from weblogic/aix run but the problem is the same on >> other platforms as well. >> >> Does anyone has ever experienced such problems ? >> >> The performance penalty seems to be located in the >> AbstractResource.forLocale() method, especially the potential.exists() >> call. This part of code haven't evolved with the 5.1.x version. >> >> Does anybody have any idea on how to get around this problem ? >> >> Thanks in advance >> >> -- >> ChristianZen >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: users-unsubscribe@... >> For additional commands, e-mail: users-help@... >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscribe@... > For additional commands, e-mail: users-help@... > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscribe@... For additional commands, e-mail: users-help@... |
|
|
Re: T5: ClasspathResource and performanceHi all,
Thanks for your answers. I've already stripped down the supported locale list to the only one needed. We still have two missed hit for each tried locale. The tapestry.file-check-interval doesn't help either. The file-check-interval is seems to be used only for existing files. I guess the decorator will do the trick. Thanks. Cheers, -- ChristianZen 2009/10/29 Ulrich Stärk <uli@...>: > Doesn't limiting the supported locales to just the ones you support help? > > http://tapestry.apache.org/tapestry5.0/guide/conf.html > > Uli > > Am 29.10.2009 19:39 schrieb Christiansen Merel: >> >> Hello out there, >> >> We're running a quite busy website with tapestry 5.0.18 and we're >> hitting a performance problem with the ClasspathResource class. >> >> We're using classpath asset and none of them is localised. For each >> hit on a page using a classpath asset, we end having 2 missed queries >> on the ClassLoader for potential localized version of the asset. It >> does not really slow down the application throughput but we end with >> an __huge__ CPU consumption. >> >> The javacore stack shows numerous threads scanning jar files: >> >> 3XMTHREADINFO "[ACTIVE] ExecuteThread: '2' for queue: >> 'weblogic.kernel.Default (self-tuning)'" (TID:0x3700E400, >> sys_thread_t:0x3393D030, state:B, native ID:0x009AB0B3) prio=5 >> 4XESTACKTRACE at >> java/util/zip/ZipFile.getEntry(ZipFile.java:287(Compiled Code)) >> 4XESTACKTRACE at >> java/util/jar/JarFile.getEntry(JarFile.java:283(Compiled Code)) >> 4XESTACKTRACE at >> java/util/jar/JarFile.getJarEntry(JarFile.java:266(Compiled Code)) >> 4XESTACKTRACE at >> sun/misc/URLClassPath$JarLoader.getResource(URLClassPath.java:949(Compiled >> Code)) >> 4XESTACKTRACE at >> >> sun/misc/URLClassPath$JarLoader.findResource(URLClassPath.java:938(Compiled >> Code)) >> 4XESTACKTRACE at >> sun/misc/URLClassPath.findResource(URLClassPath.java:299(Compiled >> Code)) >> 4XESTACKTRACE at >> java/net/URLClassLoader$3.run(URLClassLoader.java:784(Compiled Code)) >> 4XESTACKTRACE at >> java/security/AccessController.doPrivileged(AccessController.java:219) >> 4XESTACKTRACE at >> java/net/URLClassLoader.findResource(URLClassLoader.java:781(Compiled >> Code)) >> 4XESTACKTRACE at >> java/lang/ClassLoader.getResource(ClassLoader.java:420(Compiled Code)) >> 4XESTACKTRACE at >> java/lang/ClassLoader.getResource(ClassLoader.java:415(Compiled Code)) >> 4XESTACKTRACE at >> java/lang/ClassLoader.getResource(ClassLoader.java:415(Compiled Code)) >> 4XESTACKTRACE at >> >> weblogic/utils/classloaders/GenericClassLoader.getResourceInternal(GenericClassLoader.java:170(Compiled >> Code)) >> 4XESTACKTRACE at >> >> weblogic/utils/classloaders/GenericClassLoader.getResource(GenericClassLoader.java:187(Compiled >> Code)) >> 4XESTACKTRACE at >> >> weblogic/utils/classloaders/FilteringClassLoader.getResourceInternal(FilteringClassLoader.java:89(Compiled >> Code)) >> 4XESTACKTRACE at >> >> weblogic/utils/classloaders/GenericClassLoader.getResourceInternal(GenericClassLoader.java:155(Compiled >> Code)) >> 4XESTACKTRACE at >> >> weblogic/utils/classloaders/GenericClassLoader.getResource(GenericClassLoader.java:187(Compiled >> Code)) >> 4XESTACKTRACE at >> java/lang/ClassLoader.getResource(ClassLoader.java:415(Compiled Code)) >> 4XESTACKTRACE at >> >> weblogic/utils/classloaders/GenericClassLoader.getResource(GenericClassLoader.java:190(Compiled >> Code)) >> 4XESTACKTRACE at >> >> weblogic/utils/classloaders/ChangeAwareClassLoader.getResource(ChangeAwareClassLoader.java:118(Compiled >> Code)) >> 4XESTACKTRACE at >> >> org/apache/tapestry5/ioc/internal/util/ClasspathResource.toURL(ClasspathResource.java:59(Compiled >> Code)) >> 4XESTACKTRACE at >> >> org/apache/tapestry5/ioc/internal/util/AbstractResource.exists(AbstractResource.java:137(Compiled >> Code)) >> 4XESTACKTRACE at >> >> org/apache/tapestry5/ioc/internal/util/AbstractResource.forLocale(AbstractResource.java:100(Compiled >> Code)) >> 4XESTACKTRACE at >> >> org/apache/tapestry5/internal/services/AssetSourceImpl.findRelativeAsset(AssetSourceImpl.java:99(Compiled >> Code)) >> 4XESTACKTRACE at >> >> org/apache/tapestry5/internal/services/AssetSourceImpl.getAsset(AssetSourceImpl.java:93(Compiled >> Code)) >> 4XESTACKTRACE at >> $AssetSource_124955c0e4c.getAsset($AssetSource_124955c0e4c.java(Compiled >> Code)) >> 4XESTACKTRACE at >> >> org/apache/tapestry5/internal/transform/AbstractIncludeAssetWorker$1.perform(AbstractIncludeAssetWorker.java:79(Compiled >> Code)) >> 4XESTACKTRACE at >> >> fr/poleemploi/d2i/tapestry/navigation/unifiee/components/Bandeau.setupRender(Bandeau.java(Compiled >> Code)) >> >> The stack comes from weblogic/aix run but the problem is the same on >> other platforms as well. >> >> Does anyone has ever experienced such problems ? >> >> The performance penalty seems to be located in the >> AbstractResource.forLocale() method, especially the potential.exists() >> call. This part of code haven't evolved with the 5.1.x version. >> >> Does anybody have any idea on how to get around this problem ? >> >> Thanks in advance >> >> -- >> ChristianZen >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: users-unsubscribe@... >> For additional commands, e-mail: users-help@... >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscribe@... > For additional commands, e-mail: users-help@... > > -- ChristianZen --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscribe@... For additional commands, e-mail: users-help@... |
| Free embeddable forum powered by Nabble | Forum Help |