non-performant Collections.synchronizedMap() should be replaced with
ConcurrentMap
----------------------------------------------------------------------------------
Key: WICKET-2741
URL: https://issues.apache.org/jira/browse/WICKET-2741
Project: Wicket
Issue Type: Bug
Affects Versions: 1.4.6
Reporter: Nikita Tovstoles
The following two classes use Collections.synchronizedMap() --> lots of
contention @ concurrent load.
* RequestListenerInterface.interfaces
* WebApplication.addBufferedResponse
* Injector.inject() - 'cache' field.
The last instance makes @SpringBean unusable in production (too much contention
@ concurrent load)
Here's a sample output of contention around monitor of class
java.util.Collections$SynchronizedMap:
{noformat}
+--------------------------------------------------------------------------------------+------------------+-----------------+
| Name
| Time (ms) | Count |
+--------------------------------------------------------------------------------------+------------------+-----------------+
| +---java.util.Collections$SynchronizedMap.get(Object)
| 126,101 51 % | 19,145 52 % |
| | |
| | |
| | +---org.apache.wicket.injection.Injector.inject(Object,
IFieldValueFactory) | 109,912 45 % | 16,285 44 % |
| | |
| | |
| | +---org.springframework.beans.CachedIntrospectionResults.forClass(Class)
| 16,188 7 % | 2,860 8 % |
| |
| | |
| +---java.util.Collections$SynchronizedMap.put(Object, Object)
| 119,343 49 % | 17,676 48 % |
| |
| | |
| +---org.apache.wicket.injection.Injector.inject(Object,
IFieldValueFactory) | | |
| |
| | |
| +---org.apache.wicket.injection.ConfigurableInjector.inject(Object)
| | |
| |
| | |
|
+---org.apache.wicket.injection.ComponentInjector.onInstantiation(Component) |
118,060 48 % | 17,467 47 % |
| |
| | |
| +---com.castanealabs.gui.model.ZipCodeValidator.<init>()
| 686 0 % | 106 0 % |
| |
| | |
|
+---com.castanealabs.gui.model.ProductSkuProgramDataProvider.<init>(IModel) |
337 0 % | 59 0 % |
| |
| | |
|
+---com.castanealabs.gui.model.ProductTypeProgramDataProvider.<init>(IModel) |
259 0 % | 44 0 % |
+--------------------------------------------------------------------------------------+------------------+-----------------+
Generated by YourKit Java Profiler 8.0.22 Feb 12, 2010 3:52:25 PM
{noformat}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.