Привет! Я использую GigaSpaces XAP, который в основном использует Spring и ApplicationContext для выполнения всех операций инициализации, настройки и т. Д. В какой-то момент времени во время загрузки веб-приложения создается «кэш» или то, что они называют космическим прокси создается и становится доступным через ServletContext. Этот космический прокси-сервер позволяет писать и читать в кластерный кеш и из него.
Итак, что я сделал вначале, чтобы получить место для каждого метода REST. Итак ...
@GET
public String myMethod()
{
space = (GigaSpace)context.getAttribute("mySpace");
space.write(new HelloWorld());
space.read(....);
etc...
return "Hello World!";
}
Поскольку пространство само по себе является потокобезопасным, ребята из GigaSpaces порекомендовали один раз найти пространство при инициализации моего «приложения», чтобы я мог сэкономить на поиске пространства.
Так что я заглянул в @PostConstruct
, где я сделал ...
@PostConstruct
public void init()
{
space = (GigaSpace)context.getAttribute("mySpace");
}
Но похоже, что этот метод вызывается при каждом моем запросе! Означает ли это, что моя служба REST создается для каждого запроса, который я делаю? Это потому что я использую @Scope("request")
?
Если это помогает контейнер сервлетов - это Jetty 7.1.4, и я использую стандартную WAR для развертывания.