Am 21.10.2014 um 11:37 schrieb Mark Struberg: > Hi! > > Yesterday I wrote a small micro benchmark to test the performance of some CDI > containers. The outcome was pretty stunning - but best if you run it yourself: > > https://github.com/struberg/cdi-performance >
First of all I didn't check the repo on my system. I only looked at the source via the browser so here are some remarks: * The method 'executeInParallel' uses 'Thread.run' which just invokes the Runnable within the Thread. Therefore it's NOT executing in parallel. * Furthermore the start of the Threads should be done in a separate loop. Otherwise the system setup of the Thread (the VM management) will be mixed into the measurements. The beginning of the measurement could be placed after the thread creation: -> Thread[] threads = init -> begin = nanos -> threads.start -> threads.join -> end = nanos * Apart from this the testcase is a little bit skewed as it used application scopes. For a comparison with other frameworks it's necessary to use a representative set of data points which isn't the case for application scopes as they're usually only amount to a small fraction of all beans. It would be nice to know about the ratios between the scopes in real life applications in order to design appropriate scenarios. Best regards Daniel Kasmeroglu
