powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Как разделить память сервлета для клиентов?
12 сообщений из 12, страница 1 из 1
Как разделить память сервлета для клиентов?
    #34799935
IgorAnton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Что надо настроить сервлет или Томкат,чтабы каждому клиенту
выделялась своя область памяти?

У меня :
при запросе от любого клиента на требуемую страницу
у всех остальных появляется эта страница.

Информация сервлету, что выводить PrintWriter.println (Vector_client_x)
^^^ находиться в векторах

При входе нового клиента все вектора обновляются по его запросу для всех пользователей.

Что надо сделать, чтобы разделить память сервлета (каждому клиенту свою область переменных) ?
Если это настройки, где искать ?

Спасибо. Игорь.
...
Рейтинг: 0 / 0
Как разделить память сервлета для клиентов?
    #34799980
zalexaka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
javax.servlet.http.HttpSession вам поможет
...
Рейтинг: 0 / 0
Как разделить память сервлета для клиентов?
    #34800123
wessen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нужно все-таки почитать про сервлеты и показать код сервлета, там по любому косяк.
...
Рейтинг: 0 / 0
Как разделить память сервлета для клиентов?
    #34800428
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для начала открыть спецификацию на сервлеты и прочитать. Он очень маленькая, ёмкая и информативаня.
Затем поубирать из сервлетов поля, прислушатся к советам выше и рассказать задачу в целом.
Что делает сервлет? Почем нельзя взять какой-нить Web Framework?
...
Рейтинг: 0 / 0
Как разделить память сервлета для клиентов?
    #34800629
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IgorAntonпри запросе от любого клиента на требуемую страницу у всех остальных появляется эта страница.
- экземпляр сервлета работает одновременно в нескольких потоках, каждый из которых связан с обработкой одного из клиентских запросов. При изменении содержимого поля сервлета в одном из потоков эти изменения становятся доступными другим потокам. Либо используйте синхронизацию (что рисково для тех кто не очень хорошо знает многопоточное программирование), либо откажитесь от использования полей и объявляйте переменные непосредственно внутри метода doGet, doPost, service и т.п.

IgorAntonКак разделить память сервлета для клиентов?
OFFTOP: JVM не умеет делить память :(
...
Рейтинг: 0 / 0
Как разделить память сервлета для клиентов?
    #34800670
Juga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BlazkowiczДля начала открыть спецификацию на сервлеты и прочитать. Он очень маленькая, ёмкая и информативаня.

+1
От себя: интерфейс SingleThreadModel
...
Рейтинг: 0 / 0
Как разделить память сервлета для клиентов?
    #34800708
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JugaОт себя: интерфейс SingleThreadModel
- плохому учите: Deprecated . As of Java Servlet API 2.4
...
Рейтинг: 0 / 0
Как разделить память сервлета для клиентов?
    #34800721
Juga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kachalov JugaОт себя: интерфейс SingleThreadModel
- плохому учите: Deprecated . As of Java Servlet API 2.4
альтернативы пока ему нет. Диприкэйт он потому что не гарантирует создание нового экземпляра в пуле, зато 100% каждый юзер имеет свой контент а не соседский
...
Рейтинг: 0 / 0
Как разделить память сервлета для клиентов?
    #34800749
Kachalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Jugaальтернативы пока ему нет.
- синхронизация, а кто не осилит тому и не надо сервлеты писать, чтоб технологию не порочили

JugaДиприкэйт он потому что не гарантирует создание нового экземпляра в пуле, зато 100% каждый юзер имеет свой контент а не соседский
- зато гарантирует хороший провал производительности :)
...
Рейтинг: 0 / 0
Как разделить память сервлета для клиентов?
    #34800848
Juga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kachalov- зато гарантирует хороший провал производительности :) ну тут спорно, от задачи зависит. А на счёт синхронизации в общем то я б так и делал :). А СинглТред для тех кто пока не понимает что такое потоки
...
Рейтинг: 0 / 0
Как разделить память сервлета для клиентов?
    #34801400
IgorAnton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо всем !
BlazkowiczДля начала открыть спецификацию на сервлеты и прочитать. Он очень маленькая, ёмкая и информативаня.
Затем поубирать из сервлетов поля, прислушатся к советам выше и рассказать задачу в целом.
Что делает сервлет? Почем нельзя взять какой-нить Web Framework?
открыл,читатю.
Где взять какой-нить Web Framework ?
сервлет делает:
public void doGet(HttpServletRequest request, HttpServletResponse response)
{
Sring класс_по_запросу_клиента = request.getParameter("класс_по_запросу_клиента");
ClassforName(класс_по_запросу_клиента , вектор_параметров);
// класс_по_запросу_клиента возвращает вектор с информаией - Vector Inform.
// это может быть результат запроса SQL по дате,
// страница с компонентами и т.д., не знаю что надо завтра.

String println = "<html><head><title>title</title><meta http-equiv= ...... "
for (int i = 0; i < Inf.size; i++)
{
Vector Inf = (Vector) Inform.get(i);
println = println + (String) Inf.get(3) + (String) Inf.get(7) + (String) Inf.get(какой надо) + ... ;
}
println = println + "</FORM></body></html>";
try { PrintWriter.println(println); }
catch ( Exception e ) { обработка_исключения(); }
}

Совсем маразм ?
Еще раз спасибо. Игорь.
...
Рейтинг: 0 / 0
Как разделить память сервлета для клиентов?
    #34801426
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IgorAnton
Где взять какой-нить Web Framework ?
google -> Spring MVC, Struts 2
IgorAntonсервлет делает:
public void doGet(HttpServletRequest request, HttpServletResponse response)
{
Sring класс_по_запросу_клиента = request.getParameter("класс_по_запросу_клиента");
ClassforName(класс_по_запросу_клиента , вектор_параметров);
}
Так а что именно проблему вызвало?

IgorAntonСовсем маразм ?
В текущей реализации почти да. Даже такая фигня как JSP смотрелась бы лучше.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Как разделить память сервлета для клиентов?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]