Thứ Năm, 21 tháng 10, 2021

Tối ưu tham số DataSource trong Oracle WebLogic

Khi tạo Datasource:


Các tham số cần chú ý (một số nội dung tôi để nguyên văn Tiếng Anh do dịch ra khó hiểu hơn):

URL:

jdbc:oracle:thin:@192.168.56.1011:dbaviet1

Ko thay đổi

 

Driver Class Name:

oracle.jdbc.OracleDriver

Ko thay đổi

 

Properties:

user=app_owner

 

Ko thay đổi

 

System Properties:

Trắng

 

 

Password:

 

Ko thay đổi

 

Confirm Password:

 

Ko thay đổi

 

Initial Capacity:

 

3

The number of physical connections to create when creating the connection pool

Maximum Capacity:

 

200

The maximum number of physical connections that this connection pool can contain

Minumum Capacity

 

3

10.3.6, số connection tối thiểu

Capacity Increment

 

 

Trên phiên bản 10.3.2 (trên 10.3.6 không có), The number of connections created when new connections are added to the connection pool

When there are no more available physical connections to satisfy connection requests, WebLogic Server creates this number of additional physical connections and adds them to the connection pool.

Statement Cache Type

LRU

Ko thay đổi

LRU: Những câu lệnh hay sử dụng sẽ được sắp xếp từ theo tần xuất sử dụng, những câu lệnh ít dùng bị loại bỏ

Statement Cache Size:

10

> 10

> 10 có thể tăng hiệu năng của UD, khi đó số câu lệnh = 10* số managed server

Test Connections On Reserve

Disable

Enable

Kiểm tra connection trước khi chuyển connetion cho client

Test Frequency:

120

Ko thay đổi

Periodically tests for bad connections and closes

The number of seconds between when WebLogic Server tests unused connections. (Requires that you specify a Test Table Name.) Connections that fail the test are closed and reopened to re-establish a valid physical connection. If the test fails again, the connection is closed.

When set to 0, periodic testing is disabled.

Test Table Name:

SQL SELECT 1 FROM DUAL

Không thay đổi

 

Seconds to Trust an Idle Pool Connection:

10

Ko thay đổi

The number of seconds within a connection use that WebLogic Server trusts that the connection is still viable and will skip the connection test, either before delivering it to an application or during the periodic connection testing process.

This option is an optimization that minimizes the performance impact of connection testing, especially during heavy traffic.

Minimum value: 0

Maximum value: 2147483647

Shrink Frequency

900

Ko thay đổi

Periodically closes idle connections

Init SQL:

Trống

 

 

Connection Creation Retry Frequency:

60

Ko thay đổi

Khi DB bị fail nó sẽ retry đến khi thành công

0: Khi kết nối fail sẽ ko retry

Login Delay:

0

Ko thay đổi

 

Inactive Connection Timeout:

0

CSKH, 300: Dùng OK (session 700)

Đổi lại 0 --> session

 

Với source code không đóng connection (trên DB thấy connection Inactive cao, VD CUSMAN bình thường 700, khi lên đến 1500-2000 là có vấn đề về quản lý connection) thì cần đặt để force (ép) giải phóng connection trả về cho Pool.

Thời gian close connection  sau khi connection inactive (log hiển thị <BEA-001153> <Forcibly releasing inactive/harvested connection) có thể gây lỗi Connection Close khi tra cứu cước nóng, TLHĐ

Maximum Waiting for Connection:

2147483647

Ko thay đổi

 

Connection Reserve Timeout:

10

Ko thay đổi

Thời gian (s) khi gọi khởi tạo connection dự trữ (incremental) sẽ timeout

  • When set to 0, a call will never timeout (gọi khởi tạo không được sẽ chờ đến khi nào nhận được connection)

  • When set to -1, a call will timeout immediately (gọi khởi tạo không được sẽ timeout luôn)

When an application requests a connection from a data source, if all connections in the data source are in use and if the data source has expanded to its maximum capacity, the application will get a Connection Unavailable SQL Exception. To avoid this, you can configure the Connection Reserve Timeout value (in seconds) so that connection requests will wait for a connection to become available. After the Connection Reserve Timeout has expired, if no connection becomes available, the request will fail and the application will get a PoolLimitSQLException exception.

If you set Connection Reserve Timeout to -1, a connection request will timeout immediately if there is no connection available. If you set Connection Reserve Timeout to 0, a connection request will wait indefinitely. The default value is 10 seconds.

 

From <https://docs.oracle.com/middleware/1212/wls/JDBCA/ds_tuning.htm#JDBCA192>

Minimum value: -1

Maximum value: 2147483647

Statement Timeout

-1

HT ít kết nối: Ko thay đổi

HT gây tải cho DB: 900 (s)

(Thời gian chạy câu lệnh, khi quá thời gian trên sẽ timeout)

The time after which a statement currently being executed will time out.

StatementTimeout relies on underlying JDBC driver support. WebLogic Server passes the time specified to the JDBC driver using the java.sql.Statement.setQueryTimeout()method. If your JDBC driver does not support this method, it may throw an exception and the timeout value is ignored.

  • A value of -1 disables this feature.

  • A value of 0 means that statements will not time out.

MBean Attribute (Does not apply to application modules) : 

JDBCConnectionPoolParamsBean.StatementTimeout

Minimum value: -1

Maximum value: 2147483647

Ignore In-Use Connections

Enable (v)

Ko thay doi

 

Pinned-To-Thread

Disable

Ko thay doi

 

Remove Infected Connections Enabled

Enable (v)

Ko thay doi

 

Wrap Data Types

Enable (v)

Ko thay doi

 

Connection Harvest Max Count:

1

Ko thay doi

 

Connection Harvest Trigger Count:

-1

Ko thay doi

 


=============================
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
* Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile: 0902912888
⚡️ Skype: tranbinh48ca
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: http://bit.ly/ytb_binhoraclemaster
👨 Tiktok: https://www.tiktok.com/@binhoraclemaster?lang=vi
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhoracle
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,khóa học pl/sql, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle weblogic, middleware, hoc solaris, hoc linux, hoc aix, unix, oracle oca, oracle ocp, oracle ocm

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master