Назад | Перейти на главную страницу

Как намеренно вывести из строя виртуальную машину Oracle, загрузив системные параметры

Я использую ВМ Oracle. Я хочу исполнить стресс тест по параметрам системы, таким как ЦП, ОЗУ и т. д. Может ли кто-нибудь помочь мне, как я могу загрузить параметры с высокой нагрузкой например, использование всех виртуальных ядер, нехватка оперативной памяти и т. д.

Очень просто использовать Linux стресс утилита для выборочной загрузки некоторых или всех функций системы. Его можно скачать через YUM ...

Думать о stress как генератор нагрузки. Заставить систему дать сбой - другое усилие. Вы можете использовать это, чтобы увидеть, как все работает под нагрузкой, но я сомневаюсь, что любые разумные конфигурации из утилиты стресса вызовут сбой системы.

Также см: Максимальная загрузка процессора в * nix

Я использую следующий сценарий rb.sql.

-- The Following script shows the time it takes to insert 1 million rows in a database.
-- I used it to determine that:
-- 
-- 1) Optimized Databases perform in relation to the hardware they run on,
--    and all the databases on 1 platform run within 10% of each other.
-- 2) When Rollback, Temp or Redo logs share the same underlying disks as 
--    the "alan" table, the insert takes up to twice as long.
-- 3) When the rollback segments, Temp segments or redo log buffers are > 20 meg as
--    opposed to less than 1 meg, the inserts run 2 to 5 times faster.
--    By making the log_buffer and Rollback extents sizes close to 32k, 
--    the inserts run up to 9 times slower.
set feedback off
set termout off
drop table alan;
set termout on
create table alan (name varchar2(30)) storage (initial 32k next 1m) logging noparallel storage(buffer_pool default); 
insert into alan values ('alan');
insert into alan values ('alan1');
insert into alan select * from alan;
insert into alan select * from alan;
insert into alan select * from alan;
insert into alan select * from alan;
insert into alan select * from alan;
insert into alan select * from alan;
insert into alan select * from alan;
insert into alan select * from alan;
insert into alan select * from alan;
insert into alan select * from alan;
insert into alan select * from alan;
insert into alan select * from alan;
insert into alan select * from alan;
insert into alan select * from alan;
insert into alan select * from alan;
insert into alan select * from alan;
insert into alan select * from alan;
insert into alan select * from alan;
insert into alan select * from alan;
set timing on
insert /*+ PPEND */ into alan logging select * from alan         /* This line shows the elapsed time. */
;
set timing off
-- select max(sequence#) from v$loghist;
set feedback on
set termout off
--drop table alan;
set termout on

Я вызываю это с помощью rb16.sql:

@rb
@rb
@rb
@rb
@rb
@rb
@rb
@rb
@rb
@rb
@rb
@rb
@rb
@rb
@rb
@rb

И я вызываю rb16.sql с call_rb16.sql:

@rb16
@rb16
@rb16
@rb16
@rb16
@rb16
@rb16
@rb16
@rb16
@rb16
@rb16
@rb16
@rb16
@rb16
@rb16
@rb16

Поскольку сценарий rb.sql вставляется в таблицу alan, вы можете создать несколько пользователей Oracle и выполнить вставку из нескольких регистраций. Сценарий rb.sql выявляет узкие места.