В больших объемах (~ 50 000 запросов в секунду) Java-приложение Я использую ThreadLocal для выполнения задачи, которая должна выполняться в области запроса.
Я мог бы добиться такого же эффекта, используя область запроса Spring, и я задался вопросом, какая из них лучше?
В коде, используя ThreadLocal:
private static final ThreadLocal<SomeClass> myThreadLocal = new ThreadLocal<SomeClass>();
И для каждого параметра http-запроса:
myThreadLocal.set(new SomeClass());
Использование области запроса Spring:
@Component
@Scope("request")
public class SomeClass{
...
}
Теперь, что будет стоить дороже:
myThreadLocal.get();
ИЛИ
SpringContext.getBean(SomeClass.class);
Интересно, кто-нибудь уже пробовал такой тест?