|
|
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
Коллеги, добрый день, выручайте. Никак не можем добиться, чтобы Oracle использовал более 5 сессий для пользователя APEX_PUBLIC_USER. Listener 2.0.5, Apex 4.2.2.00.11, Oracle 11.2.0.2.0 В настройках listener: <entry key="apex.jdbc.InitialLimit">10</entry> <entry key="apex.jdbc.MinLimit">10</entry> <entry key="apex.jdbc.MaxLimit">50</entry> В сессиях Oracle видим от 10 и более сессий пользователя APEX_PUBLIC_USER, в зависимости от нагрузки, на АКТИВНЫХ всегда 5! Создали тестовую процедуру, в которой делаем задержку в минуту до отклика: Код: plsql 1. 2. 3. 4. 5. 6. 7. открываем более 5 вкладок в браузере и вызываем эту процедуру. Видим только 5 активных сессий в oracle. Шестая и следующие вкладки браузера ждут, пока не отработают первые пять сессий, потом тоже становятся активными и т.д. Более того, провели другой эксперимент. Открыли 6 вкладок браузера. В первых пяти вызвали эту минутную процедуру. А в шестой вкладке просто хотим получить картинку из файловой системы: http://10.0.0.72:8081/i/menu/edit_32.gif И Listener висит и не выдает ее, ждет, пока не отработает одна из пяти сессий. Зашли в тупик, куда дальше копать - непонятно, помогите) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 11:07 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
Mr_FrostЗашли в тупик не вижу тупика. Вы первый кто жалуется на сессии а не на производительность. С производительностью вроде у всех всё нормально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 11:14 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
Petro123, тупик в смысле непонятно что делать, почему только 5 сессий? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 11:16 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
Mr_Frost, 1. Apex Listener Standalone ? 2. В базе ожидания какие-нибудь есть для остальных 5-ти сессий ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 11:17 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
Petro123, и жалуюсь я на производительность в итоге. Когда работает большое число пользователей, очень часто приложения "подвисают". Причем нестабильно - то моментально реагируют, то вдруг через минуту подвисают. Потом снова быстро. А разгадка как раз в этих пяти сессиях. В какой-то момент времени 5 сессий активны, соответственно шестая и остальные подвисают. И так постоянно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 11:19 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
Mr_Frost, ВЫ просто не понимаете как работает jdbc пул Он берёт из пула свободное(не загруженное транзакцией или selectom) в данный момент времени соединение.И его использует...если нет свободного он открывает следующее пока не достигнет max session. Если нет свободного в рамках max то помещает в очередь и ждёмс освобождения time wait.Если достигнут time ожидания выбрасывается исключение,что нет свободных соединений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 11:20 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
Mr_FrostPetro123, и жалуюсь я на производительность в итоге. Когда работает большое число пользователей, очень часто приложения "подвисают". Причем нестабильно - то моментально реагируют, то вдруг через минуту подвисают. Потом снова быстро. А разгадка как раз в этих пяти сессиях. В какой-то момент времени 5 сессий активны, соответственно шестая и остальные подвисают. И так постоянно Скорее всего что-то с логикой приложения...например блокировка ресурса...и просто ждут его освобожденния. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 11:23 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
SvDev, да, standalone. Для остальных свыше пяти? Нет, когда в шестой вкладке запускаем вызов процедуры, в oracle не происходит ничего абсолютно, пока не отработает хотя бы одна вкладка. В первоначальной формулировке меня ввели в заблуждение Поправляюсь: В настройках listener: <entry key="apex.jdbc.InitialLimit">10</entry> <entry key="apex.jdbc.MinLimit">10</entry> <entry key="apex.jdbc.MaxLimit">50</entry> Больше 10 сессий в oracle НИКОГДА не возникает, при любой нагрузке. И из них ВСЕГДА только 5 активны, никогда больше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 11:31 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
irbis_alMr_Frost, ВЫ просто не понимаете как работает jdbc пул Он берёт из пула свободное(не загруженное транзакцией или selectom) в данный момент времени соединение.И его использует...если нет свободного он открывает следующее пока не достигнет max session. irbis_al, в настройках Oracle Listener нет такого параметра max session, о чем речь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 11:32 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
irbis_alСкорее всего что-то с логикой приложения...например блокировка ресурса...и просто ждут его освобожденния. irbis_al, тестируем не приложения, а вышеописанную процедуру открываем шесть вкладок: http://10.0.0.72:8081/idle?rnd=1&sec=60 http://10.0.0.72:8081/idle?rnd=2&sec=60 http://10.0.0.72:8081/idle?rnd=3&sec=60 http://10.0.0.72:8081/idle?rnd=4&sec=60 http://10.0.0.72:8081/idle?rnd=5&sec=60 в шестой либо так: http://10.0.0.72:8081/idle?rnd=6&sec=0 либо запрашиваем просто картинку, не процедуру oracle http://10.0.0.72:8081/i/menu/edit_32.gif и шестая вкладка висит пока не освободится одна из пяти ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 11:37 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
Mr_Frostirbis_alMr_Frost, ВЫ просто не понимаете как работает jdbc пул Он берёт из пула свободное(не загруженное транзакцией или selectom) в данный момент времени соединение.И его использует...если нет свободного он открывает следующее пока не достигнет max session. irbis_al, в настройках Oracle Listener нет такого параметра max session, о чем речь? Я тоже использую standalone...(сейчас не помню где я сессии регулировал...потом посмотрю...важно не это) Когда страничка загружена apex_public user переходи в inactive...он не остаётся active. Значит либо ваша страница типа постоянно (например в alax ом) дёргает apex циклично...или Вы используете dbms_pipe и не освобождатет его...ну или что-то непонятное. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 11:38 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
Mr_Frost, в сторону уменьшения работают параметры? Мож конфиг не тот? ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 11:39 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
Я думаю, разгадка здесь кроется именно в standalone https://cdivilly.wordpress.com/2013/03/11/oracle-application-express-listener-standalone-mode/ Standalone mode is not tunable. Want to change the number of HTTP listen threads ? You can’t do that. Впрочем не мешало бы проверить: 1. Проверить на ords 2.0.10 standalone (чтобы исключить влияния багов) 2. Проверить на ords 3.0 standalone (другая реализация, 2.0 использует Grizzly, в 3.0 используется Jetty) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 11:41 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
SvDevименно в standalone +1 ну и всё о конфиге https://docs.oracle.com/cd/E37099_01/doc.20/e25066/config_file.htm#AELIG7204 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 11:45 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
Petro123Mr_Frost, в сторону уменьшения работают параметры? Мож конфиг не тот? ) Не очень понял вопрос, но только что провели такой эксперимент <entry key="apex.jdbc.InitialLimit">1</entry> <entry key="apex.jdbc.MinLimit">1</entry> <entry key="apex.jdbc.MaxLimit">50</entry> остановили листенер. все сессии пропали стартуем листенер. появилась одна сессия. запускаем шесть и более вкладок. Ровно 5 сессий в Oracle. Больше не появляется, несмотря на MaxLimit = 50 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 11:48 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
Mr_FrostPetro123Mr_Frost, в сторону уменьшения работают параметры? Мож конфиг не тот? ) Не очень понял вопрос, но только что провели такой эксперимент <entry key="apex.jdbc.InitialLimit">1</entry> <entry key="apex.jdbc.MinLimit">1</entry> <entry key="apex.jdbc.MaxLimit">50</entry> остановили листенер. все сессии пропали стартуем листенер. появилась одна сессия. запускаем шесть и более вкладок. Ровно 5 сессий в Oracle. Больше не появляется, несмотря на MaxLimit = 50 Но они active или нет Код: plsql 1. Если inactive то 5 сессий в пуле по рассуждениям менеджера пула достаточно... Если active..то это тоже косяк....после загрузки страницы должно быть inactive ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 11:52 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
SvDev2. Проверить на ords 3.0 standalone (другая реализация, 2.0 использует Grizzly, в 3.0 используется Jetty) На том же сервере развернут ORDS 3.0.2 в связке с TomCat - все то же самое. При тех же настройках (initial 10, max 50) никогда более 10 сессий в oracle нет и никогда не более 5 активных ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 11:55 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
irbis_alНо они active или нет еще раз. перестартовали листенер. видим одну сессию. инактив. запускаем первую вкладку. сессия одна. активная запускаем 2 вкладку. сессий 2. обе активны запускаем 3 вкладку. сессий 3. все активны запускаем 4 вкладку. сессий 4. все активны запускаем 5 вкладку. сессий 5. все активны запускаем 6 вкладку. сессий как было 5, так и осталось. все активны проходит минута. 6 вкладка начинает работать. сессий 5. 1 активна отрабатывает 6 вкладка сессий 5. все неактивны ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 12:01 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
Mr_Frost, Если установлено в сервере приложений, то этими настройками управляет сервер приложений, смотрите настройки томката ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 12:04 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
SvDevMr_Frost, Если установлено в сервере приложений, то этими настройками управляет сервер приложений, смотрите настройки томката Знать бы еще, куда в этом томкате смотреть) Поставили его ради https, еще не работали с ним толком ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 12:13 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
SvDevЯ думаю, разгадка здесь кроется именно в standalone Want to change the number of HTTP listen threads ? You can’t do that. [/quot] Вообще количество сессий в oracle - это похоже только часть проблемы. Раз я не могу получить простую гифку в шестой сессии, пока первые пять заняты ( http://10.0.0.72:8081/i/menu/edit_32.gif) то я почти на 100% уверен, что если в /i/ положить более-менее тяжелый файл и запустить в пяти вкладках его загрузку http://10.0.0.72:8081/i/BIG_IMAGE.jpg то шестая вкладка не выдаст мне малюсенькую гифку, пока не отработает одна из пяти вкладок. Надо будет после обеда это проверить) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 12:19 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
Mr_Frost, в /i/ уже работает кеш ослика. Поэтому это не критично...повторная загрузка рисунков. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 12:30 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
Mr_FrostSvDevMr_Frost, Если установлено в сервере приложений, то этими настройками управляет сервер приложений, смотрите настройки томката Знать бы еще, куда в этом томкате смотреть) Поставили его ради https, еще не работали с ним толком Приношу извинения,я протупил...не увидел dbms_lock(что меяет дело принципиально) Я повторил Ваш эксперимент у себя и у меня такая же лажа...5 сессий активных висит и всё.\ Я подумал что дело в dbms_lock и запустил сессии по формированию алкогольной декларации...там около минуты. И заметил,что 6я сессия (при нажатии кнопки формировать)всегда меня выбрасывает в страницу login... Т.е может ограничение для одного хоста.. Сейчас нет возможности проверить с разных хостов...когда я тестировал апекс на сессии я делал на разных хостах-компах...формировал ресурсоёмкий отчёт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 13:07 |
|
||
|
Число активных сессий для Apex Listener
|
|||
|---|---|---|---|
|
#18+
irbis_alИ заметил,что 6я сессия (при нажатии кнопки формировать)всегда меня выбрасывает в страницу login... У нас так не бывает, чтобы на логин выбрасывало, просто у людей приложения подвисают на несколько секунд, потом выдают данные. Только эти "несколько" секунд бывают от одной-двух до 10-15 и более, смотря по активности и тяжести запросов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2016, 13:11 |
|
||
|
|

start [/forum/topic.php?fid=50&fpage=24&tid=1874693]: |
0ms |
get settings: |
6ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
30ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 219ms |
| total: | 332ms |

| 0 / 0 |
