Показать сообщение отдельно
  #25  
Старый 24.09.2009, 19:45
Marley Marley вне форума
Senior Member
 
Регистрация: 19.09.2009
Сообщений: 7,211
По умолчанию Пользовательские сеансы: разделяемый сервер (shared server)



Пользовательские сеансы: разделяемый сервер (shared server)

Каждая служба в архитектуре разделяемого сервера (Shared Server) представлена хотя бы одним, а обычно несколькими диспетчерскими процессами. Когда запрос на установление соединения поступает к процессу прослушивания, тот не порождает выделенный серверный процесс. Вместо этого процесс прослушивания ведет список диспетчеров, доступных для каждого имени службы, вместе с информацией о их загрузке (число текущих соединений к каждому диспетчеру).

Запрос на соединение направляется к наименее загруженному диспетчерскому процессу, обслуживающему службу с требуемым именем. Пользователи остаются подсоединенными к одному и тому диспетчеру в течении всего сеанса.

В отличие от выделенных серверных процессов один диспетчер может управлять сотнями сеансов пользователей.

На самом деле диспетчеры не выполняют пользовательские запросы. Вместо этого они передают их в общую очередь, расположенную в области разделяемого пула SGA. Разделяемые серверные процессы берут на себя большую часть работы выделенных серверных процессов, выбирая запросы из очереди и полностью их обрабатывая. Так как запросы одного и того же пользовательского сеанса могут обрабатываться разными серверными процессами, большая часть структур памяти, обычно хранимых в PGA, должны быть размещены в разделяемой памяти (по умолчанию в разделяемом пуле). Однако, если сконфигурирован большой пул или включено автоматическое управление памятью (SGA_TARGET >0), такие структуры используют место в большом пуле SGA.
__________________
Телеграм чат
Ответить с цитированием