-
@andrzej.wojcik I toyed with it a bit and:
getClassesFromNames- this one short-cirquites and it's quite fastgetClassesFromClassPath- this one finishes in ~75ms (and my quick attempt at parallel stream bumped it 10x)getBeanClassesFromAnnotationsin general finishes in 0ms
Not sure if there is any room to improvements here and #server-1210 would give more benefits.
-
@wojtek I suppose that this may be slow when you do not have an SSD. Have you checked on AWS-EC2? I suppose it could be slower, but with your measures I should not have a huge impact.
I suppose we could skip this task. If you agree, then please close it.
| Type |
Task
|
| Priority |
Normal
|
| Assignee |
Issue Votes (0)
Watchers (0)
Perform class loading and filtering in parallel (stream comes to mind) should speed up the process, possible candidates:
tigase.util.ClassUtil#getClassesFromNames(java.util.Set<java.lang.String>, java.util.function.Predicate<java.lang.String>)tigase.util.ClassUtil#getClassesFromClassPath(java.util.function.Predicate<java.lang.String>)tigase.kernel.beans.config.AbstractBeanConfigurator#getBeanClassesFromAnnotationstigase.util.reflection.ClassUtilBean#getAllClasses()is used and loopedIt may be a good idea to use JMH (vide https://github.com/tigase/tigase-jmh-benchmarks)