Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
APEX и Global Temporary Table
|
|||
|---|---|---|---|
|
#18+
добрый день. ситуация следующая: в приложении активно используются global temporary table, с расчетом на то, что пользователи не будут видеть данные друг друга. но проверка показала, что APEX со своим apex_public_user-ом создает всего одну сессию БД на всех и, соответственно, разные пользователи работающие в приложении на разных машинах по сути пользуются одними данными. как можно этого избежать? не хотелось бы отказываться от GTT или добавлять в них поля типа идентификатор apex-сессии. как можно заставить апекса создавать каждый раз новую сессию к БД при коннекте очередного пользователя? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2010, 09:01 |
|
||
|
APEX и Global Temporary Table
|
|||
|---|---|---|---|
|
#18+
Darkripple, Возможно Вам подойдет механизм коллекций в APEX. Using Collections APEX_COLLECTION Пример реализации: Sample Applications -> Collection Showcase ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2010, 10:24 |
|
||
|
APEX и Global Temporary Table
|
|||
|---|---|---|---|
|
#18+
Darkripple, на самом деле APEX и создаёт каждый раз новую сессию. Только не при "коннекте очередного пользователя", а при каждом отображении и при каждой обработке страницы, а также при обращении к БД через AJAX. Так что проблемой для Вас будет сохранить данные во временной таблице от одного соединения к следующему. Как уже сказали, используйте коллекции APEX. PS: Интересно, как проводилась проверка, раз Вы увидели только одну сессию APEX_PUBLIC_USER. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2010, 10:41 |
|
||
|
APEX и Global Temporary Table
|
|||
|---|---|---|---|
|
#18+
коллекции апекса не очень подходят, так как среда работы будет не только апексовая, и хотелось создать единобезобразную схему запоминания параметров. suPPLerна самом деле APEX и создаёт каждый раз новую сессию suPPLerИнтересно, как проводилась проверка, раз Вы увидели только одну сессию APEX_PUBLIC_USERпроверка проводилась так: запускалось приложение на одной машине. делался запрос в БД select SID,SERIAL#, CLIENT_INFO from v$session vv where username = 'APEX_PUBLIC_USER' запоминался sid и serial. потом запускалось приложение на другой машине из под другого пользователся. повторялся запрос. sid и serial оставались теми же. поменялся только CLIENT_INFO. потом запускалось совсем другое приложение. результат тот же. то есть такое ощущение что он вообще держит одну сессию на всех. suPPLerТак что проблемой для Вас будет сохранить данные во временной таблице от одного соединения к следующему в том то и дело, что проблема в обратном. запускаю приложение на одной машине. вставляю в GTP пару записей. запускаю приложение на другой машине - и вывожу содержимое таблицы - те самые две записи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2010, 12:07 |
|
||
|
APEX и Global Temporary Table
|
|||
|---|---|---|---|
|
#18+
не "GTP", а "GTT", опечатолся (: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2010, 12:15 |
|
||
|
APEX и Global Temporary Table
|
|||
|---|---|---|---|
|
#18+
Darkripple, я упростил. :) APEX использует соединения типа shared server . Набор серверных процессов обрабатывает запросы набора клиентских процессов без постоянного соответствия 1-к-1 процесса из первого набора процессу из второго (как это работает в dedicated server connections ). Серверные процессы могут создаваться/уничтожаться во время работы экземпляра, если это необходимо. Поэтому принято не заморачиваться и считать, что при обращении к БД APEX открывает каждый раз новое соединение, stateless connection. Между этими соединениями нельзя рассчитывать ни на что, связанное с конкретным соединением: глобальные переменные пакетов, не-глобальные пользовательские контексты, сегменты GTT... PS: Интересно, сколько у Вас серверных процессов? Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2010, 18:57 |
|
||
|
APEX и Global Temporary Table
|
|||
|---|---|---|---|
|
#18+
suPPLer, по-моему АПЕКС использует тот тип сервера, который настроен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2010, 03:03 |
|
||
|
APEX и Global Temporary Table
|
|||
|---|---|---|---|
|
#18+
suPPLerPS: Интересно, сколько у Вас серверных процессов? запрос выдал Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2010, 07:26 |
|
||
|
APEX и Global Temporary Table
|
|||
|---|---|---|---|
|
#18+
посмотрите на это: Using Virtual Private Database (VPD) in an HTML DB Application http://www.oracle.com/technology/products/database/application_express/html/vpd.html возможно, вам очень подойдет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2010, 18:39 |
|
||
|
APEX и Global Temporary Table
|
|||
|---|---|---|---|
|
#18+
Прикольно, дословный перевод этой темы у буржуев: http://www.progtown.com/topic610853-apex-and-global-temporary-table.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2017, 09:22 |
|
||
|
|

start [/forum/topic.php?fid=50&msg=36874103&tid=1874309]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
174ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
| others: | 290ms |
| total: | 566ms |

| 0 / 0 |
