Tuesday, May 27, 2025

.::: Quary query to simulation High CPU & High Memory Usage In EDB PostgreSQL :::.

 
 
A. Simulation High CPU

1. Contoh query untuk Simulasi CPU Tinggi
 
Untuk mensimulasikan CPU utilization tinggi di PostgreSQL menggunakan query, kamu bisa menjalankan perintah yang bersifat berat secara berulang, misalnya:

PERINGATAN!
Skrip di bawah akan membuat CPU usage PostgreSQL tinggi, gunakan di lingkungan development/test, bukan production.


CREATE OR REPLACE PROCEDURE cpu_hog()
LANGUAGE plpgsql
AS $$
DECLARE
    start_time timestamp := clock_timestamp();
    elapsed interval;
    i integer := 0;
    j double precision := 0;
BEGIN
    LOOP
        j := sqrt(i * random());
        i := i + 1;

        elapsed := clock_timestamp() - start_time;
        EXIT WHEN elapsed >= interval '20 seconds';
    END LOOP;
END;
$$;

 
2. Jalankan Banyak Thread Paralel (gunakan SQLCMD atau SSMS):

-- Buka beberapa tab dan jalankan secara bersamaan

CALL cpu_hog();

Untuk simulasi lebih berat, jalankan 5–10 tab secara paralel.

3. check cpu usage
 


4. check running


SELECT datid,pid, usename, datname,application_name,client_addr, state, query_start, query
FROM pg_stat_activity
WHERE state != 'idle'
ORDER BY query_start DESC;

 

B. Simulation High Memory Usage

1. Contoh query untuk Simulasi CPU Tinggi


DROP TABLE IF EXISTS tbl_memload;

CREATE TABLE tbl_memload (
    id SERIAL PRIMARY KEY,
    filler TEXT
);

2. running query

-- Insert 100,000 baris dengan isi ~80KB per baris
INSERT INTO tbl_memload (filler)
SELECT repeat('A', 80000)
FROM generate_series(1, 100000);


3. check memory usage
 


4. check running
 

No comments:

Post a Comment

Popular Posts