Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle APEX Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 [3]      все
 Re: Замедление заливки приложений APEX  [new]
VDom
Member

Откуда:
Сообщений: 51
Petro123,
Ошибаетесь уважаемый, сначала в реал тестинге записывают (ну или если хотите сохраняют) а потом проигрывают (или если угодно создают)
11 авг 17, 16:14    [20717355]     Ответить | Цитировать Сообщить модератору
 Re: Замедление заливки приложений APEX  [new]
SvDev
Member

Откуда: Челябинск
Сообщений: 1939
VDom,

Как с поиском зависимостей, какие-то конкретные данные статистические есть ?
Например, apex_workspace_activity_log - можно понаблюдать количество запросов к определенным страницам, содержащий определенный функционал (exists apex_application_page_items / apex_application_page_proc и др)

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

При работе с такими проблемами это не всегда надежный способ, проблема всегда может оказаться в каком-то другом месте, но если она, например, косвенно связана с апексом, то есть вероятность найти какой-нибудь неожиданный способ её исправить.

+ У вас есть вариант обновиться до апекс 4.2 (в котором было много оптимизаций, например под RAC (apxpart.sql) и в таблице wwv_flow_data в том числе ) и ords 2.0.10 с app server (не знаю как поведёт себя ваша система на нём, но зато вы сможете использовать RESTful ).

Это имеет смысл, если вы связываете проблему с wwv_flow_file_objects$ и wwv_flow_data, можно сделать замеры, как зависит нарастание проблемы от времени и разного рода нагрузки, и сделать тесты как изменилось нарастание после переезда.

Заодно будут пересозданы апексные таблицы в новую схему (кроме wwv_flow_file_objects$)
11 авг 17, 18:42    [20717638]     Ответить | Цитировать Сообщить модератору
 Re: Замедление заливки приложений APEX  [new]
SvDev
Member

Откуда: Челябинск
Сообщений: 1939
Добавлю,

можно посмотреть как изменилась таблица wwv_flow_data

+ 3.1.2
prompt ...wwv_flow_data



create table wwv_flow_data (
    flow_instance        number not null
                         constraint wwv_flow_data_fk
                         references wwv_flow_sessions$
                         on delete cascade,
    item_id              number,
    item_element_id      number,
    item_filter          varchar2(1)
                         constraint valid_item_filter
                         check (item_filter in ('Y','N')),
    session_state_status varchar2(1)
                         constraint valid_session_state_status
                         check (session_state_status in ('I','U','R')),
    flow_id              number,
    item_name            varchar2(255),
    name_length          int,
    item_value           clob)
    storage (initial 1M next 1M freelists 20)
    lob (item_value) store as (cache reads enable storage in row)
/




create unique index WWV_FLOW_DATA_IDX1 on wwv_flow_data (FLOW_INSTANCE,ITEM_ID);
create index WWV_FLOW_DATA_IDX2 on wwv_flow_data (flow_id,FLOW_INSTANCE);


+ 4.2.6
prompt ...wwv_flow_data
--==============================================================================
-- session state
--
-- IF YOU CHANGE THIS TABLE OR IT'S INDEXES
-- do not forget to synchronize ../utilities/apxpart.sql
--==============================================================================
create table wwv_flow_data (
    flow_instance        number
                         constraint wwv_flow_data_session_fk
                         references wwv_flow_sessions$
                         on delete cascade,
    item_id              number,
    item_filter          varchar2(1)
                         constraint valid_item_filter
                         check (item_filter in ('Y','N')),
    session_state_status varchar2(1)
                         constraint valid_session_state_status
                         check (session_state_status in ('I','U','R')),
    flow_id              number,
    item_name            varchar2(255),
    is_encrypted         varchar2(1),
    item_value_vc2       varchar2(4000),
    item_value_clob      clob,
    constraint wwv_flow_data_pk primary key (flow_instance, item_id)
                         using index (
                             create index wwv_flow_data_pk on wwv_flow_data (flow_instance,item_id)
                             compress 1) )
    storage (initial 1M next 1M freelists 20)
    initrans 8 maxtrans 255
    lob (item_value_clob) store as (cache reads disable storage in row)
/

create index WWV_FLOW_DATA_IDX1 on wwv_flow_data (flow_id) compress 1
/


Соотношение clob ко всем остальным не clob, очень низкое, например, оно может быть 0.0001 % (на сервере, что я проверял, нагрузка небольшая, зато приложений много).
И те в новых версиях хранятся как out of line, т.е. не мешают ничем

+ проверить
-- для версии 5.0
select count(case when t.item_value_clob is not null then 1 end) 
       / (count(case when t.item_value_clob is not null then 1 end) + count(t.item_value_vc2)) clob_proportion
     
     , count( distinct
             ( select t2.flow_id
               from apex_050000.wwv_flow_step_items t2
                  , APEX_050000.wwv_flows t3
               where t2.id = t.item_id
                 and t2.flow_id = t3.id
                 and t3.security_group_id not in (10,11,12) )) distinct_apps
from apex_050000.wwv_flow_data t


Это я всё веду к тому, что упомянутых узких архитектурных мест с LOB в современных версиях апекса нет. И что, и в 3-тьей версии, не увидел каких-либо подтверждений участия апекс.
15 авг 17, 18:48    [20726263]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 [3]      все
Все форумы / Oracle APEX Ответить