[jboss-dev-forums] [Design the new POJO MicroContainer] - Re: VFS Performance
adrian@jboss.org
do-not-reply at jboss.com
Thu Jul 24 06:26:49 EDT 2008
"adrian at jboss.org" wrote :
| Reading byte code from zip files
|
| | java.util.zip.Inflater.inflateBytes(Inflater.java:Unknown line)
| | java.util.zip.Inflater.inflate(Inflater.java:215)
| | java.util.zip.InflaterInputStream.read(InflaterInputStream.java:128)
| | java.io.FilterInputStream.read(FilterInputStream.java:90)
| | org.jboss.virtual.plugins.context.zip.ZipEntryInputStream.read(ZipEntryInputStream.java:112)
| | org.jboss.classloader.plugins.ClassLoaderUtils.loadByteCode(ClassLoaderUtils.java:150)
| | org.jboss.classloader.spi.base.BaseClassLoader$2.run(BaseClassLoader.java:475)
| | org.jboss.classloader.spi.base.BaseClassLoader$2.run(BaseClassLoader.java:464)
| | java.security.AccessController.doPrivileged(AccessController.java:Unknown line)
| | org.jboss.classloader.spi.base.BaseClassLoader.loadClassLocally(BaseClassLoader.java:462)
| |
|
| This one might improve if we wrap the VFS stream in a BufferedInputStream
| in ClassLoaderUtils?
| This looks inefficient, it is listing a parent directory when we do getChild
|
|
| | java.io.UnixFileSystem.checkAccess(UnixFileSystem.java:Unknown line)
| | java.io.File.canRead(File.java:660)
| | org.jboss.virtual.plugins.context.file.FileHandler.getChildren(FileHandler.java:161)
| | org.jboss.virtual.plugins.context.file.FileSystemContext.createVirtualFileHandler(FileSystemContext.java:337)
| | org.jboss.virtual.plugins.context.file.FileSystemContext.createVirtualFileHandler(FileSystemContext.java:256)
| | org.jboss.virtual.plugins.context.file.FileHandler.createChildHandler(FileHandler.java:224)
| | org.jboss.virtual.plugins.context.AbstractVirtualFileHandler.structuredFindChild(AbstractVirtualFileHandler.java:509)
| | org.jboss.virtual.plugins.context.file.FileHandler.getChild(FileHandler.java:233)
| | org.jboss.virtual.VirtualFile.getChild(VirtualFile.java:427)
| | org.jboss.classloading.spi.vfs.policy.VFSClassLoaderPolicy.findVirtualFileInfo(VFSClassLoaderPolicy.java:488)
| |
|
| Modified checking
|
|
| | java.io.UnixFileSystem.getLastModifiedTime(UnixFileSystem.java:Unknown line)
| | java.io.File.lastModified(File.java:795)
| | org.jboss.virtual.plugins.context.zip.ZipFileWrapper.getLastModified(ZipFileWrapper.java:140)
| | org.jboss.virtual.plugins.context.zip.ZipEntryContext.getLastModified(ZipEntryContext.java:682)
| | org.jboss.virtual.plugins.context.zip.ZipEntryHandler.getLastModified(ZipEntryHandler.java:92)
| | org.jboss.virtual.plugins.context.DelegatingHandler.getLastModified(DelegatingHandler.java:107)
| | org.jboss.virtual.plugins.context.AbstractVirtualFileHandler.hasBeenModified(AbstractVirtualFileHandler.java:181)
| | org.jboss.virtual.plugins.context.file.FileHandler.getChildren(FileHandler.java:183)
| | org.jboss.virtual.plugins.context.file.FileSystemContext.createVirtualFileHandler(FileSystemContext.java:337)
| | org.jboss.virtual.plugins.context.file.FileSystemContext.createVirtualFileHandler(FileSystemContext.java:256)
| |
|
| I keep seeing this, not checked if it is a real inefficiency
|
|
| | org.jboss.virtual.plugins.context.AbstractVirtualFileHandler.getLocalPathName(AbstractVirtualFileHandler.java:230)
| | org.jboss.virtual.plugins.context.zip.ZipEntryContext.isLeaf(ZipEntryContext.java:751)
| | org.jboss.virtual.plugins.context.zip.ZipEntryHandler.isLeaf(ZipEntryHandler.java:110)
| | org.jboss.virtual.plugins.context.AbstractVirtualFileHandler.structuredFindChild(AbstractVirtualFileHandler.java:502)
| | org.jboss.virtual.plugins.context.zip.ZipEntryHandler.getChild(ZipEntryHandler.java:139)
| | org.jboss.virtual.plugins.context.DelegatingHandler.getChild(DelegatingHandler.java:93)
| | org.jboss.virtual.VirtualFile.getChild(VirtualFile.java:427)
| | org.jboss.classloading.spi.vfs.policy.VFSClassLoaderPolicy.findVirtualFileInfo(VFSClassLoaderPolicy.java:488)
| | org.jboss.classloading.spi.vfs.policy.VFSClassLoaderPolicy.findChild(VFSClassLoaderPolicy.java:452)
| | org.jboss.classloading.spi.vfs.policy.VFSClassLoaderPolicy.getResource(VFSClassLoaderPolicy.java:385)
| |
|
| Similarly this
|
|
| | java.util.concurrent.ConcurrentHashMap$Segment.get(ConcurrentHashMap.java:334)
| | java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:731)
| | org.jboss.virtual.plugins.context.zip.ZipEntryContext.getRoot(ZipEntryContext.java:606)
| | org.jboss.virtual.plugins.context.AbstractVirtualFileHandler.getLocalPathName(AbstractVirtualFileHandler.java:230)
| | org.jboss.virtual.plugins.context.zip.ZipEntryContext.isLeaf(ZipEntryContext.java:751)
| | org.jboss.virtual.plugins.context.zip.ZipEntryHandler.isLeaf(ZipEntryHandler.java:110)
| | org.jboss.virtual.plugins.context.AbstractVirtualFileHandler.structuredFindChild(AbstractVirtualFileHandler.java:502)
| | org.jboss.virtual.plugins.context.zip.ZipEntryHandler.getChild(ZipEntryHandler.java:139)
| | org.jboss.virtual.plugins.context.DelegatingHandler.getChild(DelegatingHandler.java:93)
| | org.jboss.virtual.VirtualFile.getChild(VirtualFile.java:427)
| |
|
| I'm still seeing the PathTokenizer showing up
|
|
| | org.jboss.virtual.plugins.vfs.helpers.PathTokenizer.getTokens(PathTokenizer.java:97)
| | org.jboss.virtual.plugins.context.AbstractVirtualFileHandler.structuredFindChild(AbstractVirtualFileHandler.java:475)
| | org.jboss.virtual.plugins.context.zip.ZipEntryHandler.getChild(ZipEntryHandler.java:139)
| | org.jboss.virtual.plugins.context.DelegatingHandler.getChild(DelegatingHandler.java:93)
| | org.jboss.virtual.VirtualFile.getChild(VirtualFile.java:427)
| | org.jboss.classloading.spi.vfs.policy.VFSClassLoaderPolicy.findVirtualFileInfo(VFSClassLoaderPolicy.java:488)
| | org.jboss.classloading.spi.vfs.policy.VFSClassLoaderPolicy.findChild(VFSClassLoaderPolicy.java:452)
| | org.jboss.classloading.spi.vfs.policy.VFSClassLoaderPolicy.getResource(VFSClassLoaderPolicy.java:385)
| | org.jboss.classloader.spi.base.BaseClassLoader$3.run(BaseClassLoader.java:567)
| | org.jboss.classloader.spi.base.BaseClassLoader$3.run(BaseClassLoader.java:564)
| |
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4166370#4166370
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4166370
More information about the jboss-dev-forums
mailing list