Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Trình quản lý đồng thời Oracle

Oracle Concurrent Manager là một phần quan trọng trong sản phẩm Oracle E-Business Suite. nó giúp xử lý hàng loạt nhiều thứ.

Tôi ở đây trình bày một số chi tiết về nó

Nó bao gồm một số phần. Giải thích chi tiết từng điều này. Nó cho bạn cái nhìn sơ lược về Cách thức hoạt động của Quy trình quản lý đồng thời E-Business Suite

Mục lục

Các loại trình quản lý đồng thời của Oracle

Người quản lý đồng thời nội bộ (ICM)

Trình quản lý đồng thời nội bộ (ICM) có thể được coi là “bộ não” của quá trình xử lý đồng thời. Nó chịu trách nhiệm cho các chức năng sau:

-Khởi động tất cả các quy trình khác như trình quản lý giải quyết xung đột, trình quản lý tiêu chuẩn
-Thực hiện “yêu cầu kiểm soát” do quản trị viên gửi.
-Kích hoạt / Hủy kích hoạt / Hủy bỏ trình quản lý đồng thời
-Chỉ định yêu cầu đồng thời
- Theo dõi các quy trình, khởi động lại bất kỳ quy trình nào không thành công.
-Đặt số lượng quy trình mục tiêu cho từng dịch vụ dựa trên ca làm việc hiện tại.

Khởi động ICM

-adcmctl.sh script
-TNS Apps Listener phải được khởi động trước khi bắt đầu ICM

Tắt ICM

-Ngắt ICM sẽ dừng tất cả các dịch vụ khác như trình quản lý giải quyết xung đột, trình quản lý tiêu chuẩn
- Tắt thông thường báo hiệu các quy trình thoát sau khi hoàn thành tác vụ hiện tại của chúng.
- Hủy bỏ sẽ chấm dứt các quy trình dịch vụ.
- ICM sẽ không thoát cho đến khi tất cả các quy trình khác đã thoát.
-Sử dụng adcmctl.sh để tắt ICM.

Người quản lý dịch vụ (FNDSM)

Người quản lý dịch vụ được sinh ra trên các nút tầng giữa của hệ thống hỗ trợ GSM để hoạt động như một đại lý của ICM. Khi ICM nhận thấy rằng nó cần một trình quản lý dịch vụ để thực hiện một số chức năng, chẳng hạn như bắt đầu quy trình quản lý đồng thời, trên một nút cấp giữa, nó sẽ thực hiện các lệnh gọi điều khiển thủ tục từ xa tới trình nghe Ứng dụng trên nút đó để khởi động Trình quản lý dịch vụ. Sau khi khởi động và khởi chạy Trình quản lý dịch vụ, ICM sẽ giao tiếp trực tiếp với Trình quản lý dịch vụ thông qua lệnh gọi Thủ tục từ xa (RPC), cung cấp cho nó thông tin để quản lý các dịch vụ trên nút đó.

-Người quản lý dịch vụ được tạo ra từ APPS TNS Listener
- APPS TNS Listener phải được khởi động trên mọi nút cấp giữa trong hệ thống và được khởi động bởi người dùng khởi động ICM (ví dụ:applmgr)
- TNS Listener sinh ra Trình quản lý dịch vụ để chạy với tư cách là đại lý của ICM cho nút cục bộ
- Trình quản lý dịch vụ được ICM khởi động theo yêu cầu khi cần thiết. Nếu không có hành động quản lý nào cần thiết trên một nút, ICM sẽ không khởi động Trình quản lý dịch vụ cho đến khi cần thiết. Khi ICM thoát cũng thoát ra khỏi Service Manager.
-Môi trường Service Manager được đặt bởi APPSORA.env như được định nghĩa trong listener.ora
-Các tệp listener.ora và tnsnames.ora phải được định cấu hình đúng cách cho người nghe để có thể sinh ra Trình quản lý dịch vụ và để ICM có thể kiểm tra trạng thái của Trình quản lý dịch vụ.

Màn hình bên trong (FNDIMON)

Màn hình nội bộ được sử dụng đặc biệt trong Xử lý đồng thời song song để cho phép trình quản lý đồng thời nội bộ không thể vượt qua các nút cấp giữa có sẵn khác.

-Đặt một Màn hình Nội bộ trên bất kỳ nút nào mà ICM có thể khởi động trong trường hợp bị lỗi.
-Các Màn hình Nội bộ được tạo hạt giống trên mọi nút đã đăng ký theo mặc định.
-Nếu ICM bị hỏng, Màn hình Nội bộ sẽ cố gắng bắt đầu một ICM mới trên nút cục bộ.
-Nếu nhiều ICM được khởi động, chỉ cái đầu tiên vẫn hoạt động. Những người khác sẽ thoát ra một cách duyên dáng.

Trình quản lý đồng thời Oracle (FNDLIBR, INVLIBR)

Người quản lý đồng thời cung cấp xử lý công việc không đồng bộ bằng cách theo dõi bảng FND_CONCURRENT_REQUESTS theo chu kỳ liên tục. Công việc của người quản lý đồng thời là thực hiện các yêu cầu đồng thời ở giai đoạn / trạng thái Đang chờ xử lý / Bình thường và người quản lý đó đủ điều kiện để chạy theo các quy tắc chuyên môn hóa của mình.

Quy trình của người quản lý đồng thời
- Hành động độc lập
- Chỉ chọn các yêu cầu:(a) phù hợp với các quy tắc chuyên môn hóa của người quản lý, (b) là Đang chờ xử lý / Bình thường, (c) có thời gian bắt đầu được yêu cầu

Mô tả về các bảng tiên tri Oracle Concurrent Manager quan trọng

FND_CONCURRENT_QUEUES
TARGET_NODE
-Được sử dụng để cho biết nơi các quy trình bổ sung sẽ được bắt đầu
-Người quản lý sử dụng để xác định xem họ có nên tự tắt để di chuyển hay không
-Người quản lý so sánh giá trị tham số được chuyển khi khởi động đến giá trị này
-Được giao diện người dùng sử dụng để cho biết nơi các quy trình tồn tại (không hoàn toàn chính xác trong trường hợp di chuyển)
-Được ICM chỉ định dựa trên cài đặt chính, phụ

NODE_NAME
-Chỉ định nút chính cho tải theo hướng PCP
-Nơi các quy trình sẽ được bắt đầu trừ khi nút không trực tuyến hoặc đã được xác định là không khả dụng
-Nếu không có nút nào được chỉ định, ICM sẽ chỉ định mục tiêu nút theo mặc định thành NODE_NAME2
-Chỉ định nút phụ cho PCP - không vượt qua tải được định hướng
-Chỉ được gán là TARGET_NODE nếu nút chính không khả dụng

FND_CONCURRENT_PROCESSES
NODE_NAME
-Chỉ báo nơi quy trình người quản lý đang chạy
-Cũng cho biết nơi tệp của người quản lý tồn tại
-Được tích hợp sử dụng giá trị từ uname () (tên máy vật lý)
-Sử dụng bởi ICM khi kết thúc quy trình
-Sử dụng khi xem tệp nhật ký trong Giao diện người dùng (UI)
-Được sử dụng bởi Chương trình Purge để xóa tệp nhật ký quy trình
-Có thể được sử dụng để tính toán thống kê khối lượng công việc
- Có thể sẽ được RPM sử dụng để cố gắng tìm một OPP
cục bộ -Sử dụng tương tự trong 11i.X để định vị Máy chủ Báo cáo

FND_CONCURRENT_REQUESTS
LOGFILE_NODE_NAME, OUTFILE_NODE_NAME
-Cho biết nơi tệp tồn tại
-Được sử dụng trong Giao diện người dùng (UI) để xem tệp
-Được chương trình Purge sử dụng để xóa tệp
-Giá trị được phổ biến bằng quy trình mgr, dựa trên nút của chính nó

FND_NODES

NODE_NAME
-Chỉ định tên nút nơi chứa tệp DBC.
-Tập lệnhAdgendbc.sh tạo tệp DBC.

SERVER_ID
-Sẽ được sử dụng để xác thực các kết nối từ nút.
-Cập nhật bởi adgendbc.sh gọi API AdminAppServer.

Bảng trình quản lý đồng thời

FND_NODES:Chứa tất cả thông tin cấp độ nút

FND_CONCURRENT_PROCESSES:Chứa tất cả thông tin về quy trình của người quản lý đồng thời
FND_CONCURRENT_REQUESTS:Chứa toàn bộ lịch sử của tất cả các yêu cầu đồng thời (cả lịch sử trước đây và những yêu cầu được lên lịch chạy trong tương lai).

FND_CONCURRENT_QUEUES:Chứa thông tin cho tất cả người quản lý đồng thời được tạo trong hệ thống
FND_CONCURRENT_PROGRAMS:Chứa thông tin cho tất cả chương trình đồng thời có trong hệ thống
FND_EXECUTABLES
FND_CP_SERVICES
FND_CONCURRENT_QUEr FND_CONCURRENT_QUEUE_CONTENT
FND_CONCURRENT_PROGRAM_SERIAL
FND_CONCURRENT_TIME_PERIODS
FND_CONCURRENT_PROCESSORS

FNDSVCRG
Thực thi FNDSVCRG được kích hoạt từ các tập lệnh điều khiển trước và sau khi một tập lệnh bắt đầu hoặc dừng dịch vụ. FNDSVCRG sẽ kết nối với cơ sở dữ liệu để xác minh cấu hình của Dịch vụ Seeded GSM. Nếu dịch vụ được đề cập không được kích hoạt để quản lý dưới GSM, tệp thực thi FNDSVCRG sẽ không làm gì cả và thoát ra. Sau đó, tập lệnh sẽ tiếp tục thực hiện các hành động bắt đầu / dừng bình thường của nó. Nếu dịch vụ được bật để quản lý GSM, tệp thi hành FNDSVCRG sẽ cập nhật thông tin liên quan đến dịch vụ trong cơ sở dữ liệu bao gồm bối cảnh môi trường, vị trí tệp nhật ký dịch vụ hiện tại và trạng thái hiện tại của dịch vụ

Trạng thái Giai đoạn Yêu cầu Đồng thời Mô tả

PENDING / Bình thường -Yêu cầu đang đợi người quản lý khả dụng tiếp theo.
PENDING / Standby -Phương trình để chạy yêu cầu không tương thích với chương trình khác hiện đang chạy.
PENDING / Đã lên lịch -Yêu cầu được lên lịch để bắt đầu vào một ngày hoặc giờ trong tương lai.
ĐANG CHỜ / Đang chờ -Một yêu cầu con đang chờ yêu cầu Cha của nó để đánh dấu nó đã sẵn sàng để chạy. Ví dụ:một yêu cầu trong nhóm yêu cầu chạy tuần tự phải đợi một yêu cầu trước đó hoàn tất.
RUNNING / Normal -Yêu cầu đang chạy bình thường.
CHẠY / Tạm dừng -Yêu cầu chính tạm dừng để tất cả các yêu cầu con của nó kết thúc chạy. Ví dụ:một bộ yêu cầu tạm dừng để tất cả các yêu cầu trong bộ hoàn tất.
CHẠY / Tiếp tục -Tất cả các yêu cầu được gửi bởi cùng một yêu cầu gốc đã hoàn tất chạy. Yêu cầu chính tiếp tục chạy.
RUNNING / Terminating -Yêu cầu được kết thúc bằng cách chọn nút Hủy Yêu cầu trong cửa sổ Yêu cầu.
ĐÃ HOÀN THÀNH / Bình thường -Yêu cầu đã hoàn tất thành công.
ĐÃ HOÀN THÀNH / Lỗi -Yêu cầu không hoàn thành thành công.
ĐÃ HOÀN THÀNH / Cảnh báo -Yêu cầu hoàn thành với cảnh báo. Ví dụ:một yêu cầu được tạo thành công nhưng không in được.
ĐÃ HOÀN THÀNH / Đã hủy -Yêu cầu đang chờ xử lý hoặc Không hoạt động bị hủy bằng cách chọn nút Hủy Yêu cầu trong cửa sổ Yêu cầu.
ĐÃ HOÀN THÀNH / Đã chấm dứt -Yêu cầu được kết thúc bằng cách chọn nút Hủy Yêu cầu trong cửa sổ Yêu cầu.
INACTIVE / Disabled -Phương trình để chạy yêu cầu không được kích hoạt. Liên hệ với quản trị viên hệ thống của bạn.
INACTIVE / On Hold- Yêu cầu đang chờ xử lý được giữ lại bằng cách chọn nút Yêu cầu Giữ ​​trong cửa sổ Yêu cầu.
KHÔNG TÁC ĐỘNG / Không có trình quản lý -Không có trình quản lý nào được xác định để chạy yêu cầu. Kiểm tra với quản trị viên hệ thống của bạn. Trạng thái Không có người quản lý cũng được đưa ra khi tất cả người quản lý bị khóa bởi các yêu cầu chạy một mình.

cách khởi động trình quản lý đồng thời trong ứng dụng oracle r12

Khởi động Trình quản lý đồng thời trong R12
Kết nối với người dùng Cấp ứng dụng thường là applmgr của nó

cd $ADMIN_SCRIPTS_HOME
./adcmctl.sh start apps/<apps-pass>

cách dừng trình quản lý đồng thời trong ứng dụng oracle r12

Dừng trình quản lý đồng thời trong R12
Kết nối với người dùng Cấp ứng dụng thường là applmgr của nó

cd $ADMIN_SCRIPTS_HOME
./adcmctl.sh stop apps/<apps-pass>

cách kiểm tra trạng thái trình quản lý đồng thời trong ứng dụng oracle r12

Để kiểm tra trạng thái của người quản lý đồng thời
Kết nối với người dùng Cấp ứng dụng thường là applmgr của nó

cd $ADMIN_SRCIPTS_HOME
./adcmctl.sh status apps/<apps-pass>

Vị trí tệp nhật ký trình quản lý đồng thời trong R12

Trình quản lý đồng thời, ICM và yêu cầu đồng thời đều tạo tệp nhật ký

A) Tệp nhật ký yêu cầu đồng thời - ghi lại việc thực hiện một yêu cầu cụ thể (l.req)
B) Tệp nhật ký trình quản lý - ghi lại hiệu suất của quy trình quản lý đồng thời. (W.mgr)
C) Tệp nhật ký trình quản lý nội bộ - ghi lại hiệu suất của ICM. (Std.mgr). Tệp nhật ký này hiển thị các tham số được sử dụng với lệnh 'adcmctl'.

nếu $ APPLICCSF được đặt

Các tệp nhật ký nằm trong Thư mục $ APPLICCSF / $ APPLICLOG.
Các tệp nhật ký cũng có thể được xem từ bên trong ứng dụng từ Biểu mẫu Yêu cầu Xem Đồng thời

R12.2 APPLICCSF =$ NE_BASE / inst / / logs / appl / conc / log

R12.1 APPLICCSF =$ INST_TOP // logs / appl / conc / log

Nếu $ APPLICCSF không được đặt

Các tệp nhật ký nằm trong Thư mục $ PRODUCT_TOP / $ APPLICLOG.

Tương tự đối với các tệp đầu ra,

nếu $ APPLICCSF được đặt

R12.2 APPLICCSF =$ NE_BASE / inst / / logs / appl / conc /

R12.1 APPLICCSF =$ INST_TOP // logs / appl / conc /

Khắc phục sự cố Trình quản lý đồng thời

Làm cách nào để bạn kiểm tra trạng thái của người quản lý đồng thời Oracle từ Hệ điều hành Lệnh
–Linux:

$ ps -ef | grep LIB

-Lưu ý rằng có thể tìm thấy Trình quản lý đồng thời nội bộ trong danh sách này vì lệnh của nó là “FNDLIBR FND CPMGR…” trong khi những người khác hiển thị giống như “FNDLIBR FND Concurrent_Processor…”
-Mạch sử dụng Unix được hiển thị trong cột đầu tiên của điều này danh sách là rất quan trọng:các quy trình người quản lý đồng thời này phải được sở hữu bởi cùng một userid Unix sở hữu mã Ứng dụng ($ APPLIC_TOP và các thư mục con của nó); người dùng này thường được gọi là “applmgr”

Tất cả các tệp được tạo bởi người quản lý đồng thời oracle sẽ đi đâu

-Tệp nhật ký ICM nằm trong thư mục $ FND_TOP / log và thường đối sánh với std.mgr.
-Tệp nhật ký của công nhân đi trong $ FND_TOP / log và khớp với W .mgr
-Các các tệp đăng xuất / đăng xuất yêu cầu đồng thời nằm trong thư mục trên cùng của sản phẩm được liên kết với sản phẩm đang chạy yêu cầu:ví dụ:tệp đăng xuất / đăng xuất cho báo cáo AR nằm trong $ AR_TOP.
-Các tệp nhật ký cho các yêu cầu đồng thời nằm trong $ Thư mục con APPLICLOG trong thư mục trên cùng của sản phẩm thích hợp và khớp với l
.req
-Các tệp ra cho các yêu cầu đồng thời đi vào thư mục con $ APPLICOUT
-Nếu APPLICCSF được đặt, nó sẽ trỏ đến đường dẫn hoàn chỉnh đến một thư mục có các thư mục con $ APPLICLOG và $ APPLICOUT. Thư mục $ APPLICCSF này sẽ được sử dụng thay vì các thư mục hàng đầu của sản phẩm khác nhau để viết
tất cả các tệp đăng xuất / đăng xuất tới.


Sự cố trình quản lý đồng thời phổ biến nhất là do sự cố bảo vệ tệp ở cấp Unix / linux.

-Bạn có đang bắt đầu quản lý đồng thời với tên applmgr không?
- applmgr có thể làm như sau để tạo tệp trong thư mục
$ FND_TOP / $ APPLICLOG không?
$ FND_TOP / $ APPLICOUT thư mục?
Unix:$ touch $ FND_TOP / $ APPLICLOG / a
-Nếu không thành công, ai sở hữu thư mục?
Unix:$ ls -ld $ FND_TOP / $ APPLICLOG
-Là thư mục này một liên kết tượng trưng? nếu vậy, các biện pháp bảo vệ trên thư mục mà nó trỏ đến là gì?
-Bạn có sắp hết dung lượng ổ đĩa trên phân vùng này không? i-node?
Unix:$ df -k
Unix (trên một số hệ thống) để kiểm tra i-node:$ df -i
-Có thiết lập APPLICCSF không?
-Nếu vậy , applmgr có thể thực hiện việc này không?
Unix:$ touch $ APPLICCSF / $ APPLICLOG / a
-Kiểm tra các thư mục $ APPLICOUT (thường là “out”) giống như các thư mục nhật ký.

Nếu Chương trình đồng thời PL / SQL không thể ghi vào tệp bên ngoài, bạn sẽ nhận được thông báo lỗi tương tự như:

MSG-00102: Error Message :ORA-20100: File o0000071.tmp creation for FND_FILE failed.
You will find more information on the cause of the error in request log.
ORA-06512: at "APPS.FND_FILE", line 378
ORA-06512: at "APPS.FND_FILE", line 473
ORA-06512: at "APPS.AP_XYZ", line 192
REP-1419: 'beforereport': PL/SQL program aborted.

LƯU Ý:Các ứng dụng cũng tạo ra các tệp đầu ra PL / SQL tạm thời được sử dụng trong quá trình xử lý đồng thời. Các tệp này được ghi vào một vị trí trên nút máy chủ cơ sở dữ liệu được chỉ định bởi cài đặt môi trường APPLICPTMP. Thư mục APPLICPTMP phải là cùng một thư mục như được chỉ định bởi tham số utl_file_dir trong tệp khởi tạo cơ sở dữ liệu của bạn.
.
Rapid Install đặt cả thông số APPLICPTMP và utl_file_dir vào cùng một thư mục mặc định. Vì các tệp tạm thời được đặt trong thư mục này có thể chứa thông tin nhạy cảm về ngữ cảnh, nên nó phải là một thư mục an toàn trên nút máy chủ cơ sở dữ liệu với quyền truy cập đọc và ghi cho chủ sở hữu máy chủ cơ sở dữ liệu. Trong hệ thống nhiều nút, thư mục được xác định bởi APPLICPTMP không cần phải tồn tại trên các máy chủ cấp ứng dụng. Trong quá trình nâng cấp với Tự động nâng cấp, bạn phải cung cấp giá trị thông số utl_file_dir cho cài đặt môi trường APPLICPTMP.

Để xác định vấn đề đang ở đâu, hãy xác minh những điều sau:

1) Đảm bảo rằng tên của tệp hợp lệ (tên tệp không được bao gồm các ký tự như “^”)

2) Đảm bảo rằng APPLICPTMP được đặt thành một thư mục hợp lệ và CẢ người dùng applmgr và người dùng cơ sở dữ liệu đều có quyền đọc và ghi trên thư mục đó (thông thường, nó có thể được đặt thành cùng một thư mục với APPLICTMP)

3) Đảm bảo rằng tệp không thoát khỏi thư mục được trỏ bởi APPLICPTMP

4) Đảm bảo rằng thư mục được trỏ bởi APPLICPTMP là mục nhập đầu tiên trên utl_file_dir. Ngoài ra, hãy xác minh rằng tất cả các mục nhập trên utl_file_dir đều hợp lệ và applmgr có quyền đọc / ghi.

Nếu sử dụng một spfile, hãy xác minh cú pháp thích hợp để đặt utl_file_dir:

Ví dụ:

ALTER SYSTEM SET UTL_FILE_DIR='directory1','directory2' scope=spfile;

5) Nếu vẫn gặp sự cố, hãy kiểm tra xem bạn có thể ghi tệp trực tiếp bằng FND_FILE, đây là gói được Ứng dụng sử dụng. Từ SQLPLUS, được kết nối với tư cách là người dùng ứng dụng, chạy:

SQL> exec FND_FILE.PUT_LINE(FND_FILE.LOG, 'THIS IS A TEST');

Điều này sẽ kết xuất một tệp trên APPLICPTMP.

Nếu kiểm tra này hoạt động, nó sẽ chỉ ra rằng FND_FILE là OK và có thể có sự cố với Ứng dụng.

Bạn có thể chỉ muốn để lại một mục nhập trên utl_file_dir cho bài kiểm tra này.

6) Nếu vẫn gặp sự cố, hãy kiểm tra xem bạn có thể ghi tệp bằng UTL_FILE, tệp được FND_FILE sử dụng.

Chạy PL / SQL bên dưới, thay đổi thành mục đầu tiên trên utl_file_dir (bạn có thể chỉ muốn để lại một mục trên utl_file_dir cho bài kiểm tra này).

set serveroutput on
DECLARE file_location VARCHAR2(256) := '';
file_name VARCHAR2(256) := 'utlfile1.lst';
file_text VARCHAR2(256) := 'THIS IS A TEST';
file_id UTL_FILE.file_type;
BEGIN
file_id := UTL_FILE.fopen(file_Location,file_name, 'W');
UTL_FILE.put_line(file_id, file_text);
UTL_FILE.fclose(file_id);
EXCEPTION
WHEN UTL_FILE.INVALID_PATH
THEN
dbms_output.put_line('Invalid path ' || SQLERRM);
WHEN OTHERS
THEN
dbms_output.put_line('Others '|| SQLCODE || ' ' || SQLERRM);
END;
/

Chương trình này sẽ kết xuất một tệp vào thư mục được yêu cầu. Nếu kiểm tra không thành công, vấn đề có thể là ở phía Cơ sở dữ liệu.

SƠ ĐỒ MÁY CHỦ XỬ LÝ HIỆN NAY


afcmstat.sql Hiển thị tất cả những người quản lý đã xác định, công suất tối đa, giá thầu và trạng thái của họ.
afimchk.sql Hiển thị trạng thái của phương pháp ICM và PMON có hiệu lực, tệp nhật ký của ICM và xác định xem trình theo dõi quản lý đồng thời có đang chạy hay không.
afcmcreq.sql Hiển thị trình quản lý đồng thời và tên của tệp nhật ký đã xử lý yêu cầu.
afrqwait.sql Hiển thị các yêu cầu đang chờ xử lý, được giữ và đã lên lịch.
afrqstat.sql Hiển thị tóm tắt trạng thái và thời gian thực hiện yêu cầu đồng thời kể từ một ngày cụ thể.
afqpmrid.sql Hiển thị id quy trình hệ điều hành của quy trình FNDLIBR dựa trên id yêu cầu đồng thời. Sau đó, id quy trình có thể được sử dụng với tiện ích ORADEBUG.
afimlock.sql Hiển thị id quy trình, thiết bị đầu cuối và id quy trình có thể gây ra khóa mà ICM và CRM đang chờ lấy. Bạn nên chạy tập lệnh này nếu có sự chậm trễ kéo dài khi gửi công việc hoặc nếu bạn nghi ngờ ICM đang gặp trục trặc với một quy trình tiên tri khác.

Cách thực hiện Điều chỉnh trình quản lý đồng thời

Điều chỉnh Trình quản lý đồng thời nội bộ (ICM)

Hiệu suất ICM bị ảnh hưởng bởi ba tham số Oracle quan trọng là chu kỳ PMON, kích thước hàng đợi và thời gian ngủ.

Chu kỳ PMON - Đây là số chu kỳ ngủ mà ICM chờ giữa thời gian nó kiểm tra lỗi của người quản lý đồng thời, mặc định là 20. Bạn nên thay đổi chu kỳ PMON thành một số thấp hơn 20 nếu những người quản lý đồng thời của bạn đang gặp vấn đề bất thường chấm dứt.

Kích thước hàng đợi - Kích thước hàng đợi là số chu kỳ PMON mà ICM chờ đợi giữa việc kiểm tra người quản lý đồng thời bị vô hiệu hóa hoặc mới. Kích thước hàng đợi của 1 chu kỳ PMON sẽ được sử dụng.

Thời gian ngủ - Tham số thời gian ngủ cho biết số giây mà ICM sẽ đợi giữa việc kiểm tra các yêu cầu đang chờ chạy. Thời gian ngủ mặc định là 60, nhưng bạn có thể giảm con số này xuống nếu thấy có nhiều yêu cầu đang chờ (Đang chờ xử lý / Bình thường). Tuy nhiên, việc giảm con số này xuống một giá trị rất thấp, nhiều nguyên nhân dẫn đến việc sử dụng cpu quá mức.

Điều chỉnh kích thước bộ nhớ cache của trình quản lý đồng thời riêng lẻ

Hiệu suất của trình quản lý đồng thời cũng có thể được nâng cao bằng cách tăng kích thước bộ đệm của trình quản lý ở mức cho thuê gấp đôi số lượng các quy trình mục tiêu. Kích thước bộ đệm chỉ định số lượng yêu cầu sẽ được lưu vào bộ đệm mỗi khi trình quản lý đồng thời đọc từ bảng FND_CONCURRENT_REQUESTS. Tăng kích thước bộ nhớ cache sẽ tăng cường thông lượng của các trình quản lý bằng cách cố gắng tránh thời gian ngủ.

Xóa các yêu cầu đồng thời
Có thể thấy rằng Khi các bản ghi trong FND_CONCURRENT_PROCESSES và FND_CONCURRENT_REQUESTS vượt quá 50K, bạn có thể bắt đầu gặp sự cố hiệu suất nghiêm trọng trong Ứng dụng Oracle của mình. Inorder để tránh những vấn đề này, chúng tôi nên thường xuyên xóa dữ liệu trong các bảng này để sử dụng yêu cầu cụ thể được gọi là "Xóa yêu cầu đồng thời và / hoặc dữ liệu người quản lý". Nó nên được lập lịch để chạy thường xuyên. Yêu cầu này có thể được định cấu hình để xóa dữ liệu yêu cầu khỏi các bảng FND cũng như các tệp nhật ký và tệp đầu ra được tích lũy trên đĩa.

Phân tích bảng từ điển ứng dụng Oracle để có hiệu suất cao

Các bảng của Trình quản lý đồng thời có thể bị phân mảnh theo thời gian, Vì vậy, bạn nên xây dựng lại chúng theo chế độ bảo trì thường xuyên
Ngoài ra, điều rất quan trọng là chạy yêu cầu Thu thập Bảng thống kê
Một số Bảng quan trọng là
FND_CONCURRENT_PROCESSES
FND_CONCURRENT_PROGRAMS
FND_CONCURRENT_REQUESTS,
FND_CONCURRENT_QUEUES.

Tôi hy vọng bạn thích bài đăng này trên Oracle Concurrent Manager.

Cũng đọc
Truy vấn Trình quản lý Đồng thời:Bài viết này chứa 30 Truy vấn Trình quản lý Đồng thời tuyệt vời hàng đầu để khắc phục sự cố, giải pháp, thời gian chạy, chi tiết
ORA-01427:Hãy xem phần này để biết giải pháp trên ORA-01427:single-row truy vấn con trả về lỗi nhiều hàng, cách giải quyết khi nó xảy ra với yêu cầu Trình quản lý đồng thời
được đặt trong ứng dụng oracle:Bộ yêu cầu cung cấp khả năng gửi cùng một nhóm yêu cầu thường xuyên bằng một giao dịch.
Câu hỏi phỏng vấn Giám đốc kiêm nhiệm ::Xem 24 câu hỏi Phỏng vấn người quản lý kiêm nhiệm để giúp bạn trong cuộc phỏng vấn EBS. Điều này bao gồm tất cả các loại câu hỏi về trình quản lý tiêu chuẩn, trình quản lý dịch vụ
Xử lý đồng thời song song:PCP là gì, cách thiết lập nó, cách xác định màn hình nội bộ
Oracle Concurrent Manager:Cách một E-Business Suite Concurrent Trình quản lý quy trình hoạt động, Trình quản lý đồng thời Oracle, Màn hình nội bộ là gì, Trình quản lý dịch vụ và khắc phục sự cố là gì
https://docs.oracle.com/cd/E18727_01/doc.121/e12893/T174296T174302.htm

Các khóa học được đề xuất

Sau đây là một số khóa học được đề xuất mà bạn có thể mua nếu muốn tiến thêm một bước

Dưới đây là các liên kết đến một số khóa học


Oracle DBA 11g / 12c - Quản trị cơ sở dữ liệu cho Junior DBA :Khóa học này phù hợp với những người mới bắt đầu làm DBA Junior hoặc muốn trở thành Oracle DBA. Điều này sẽ giúp bạn hiểu rõ về các nhiệm vụ sao lưu &phục hồi và quản trị chung
Cơ sở dữ liệu Oracle:Quản trị Oracle 12C R2 RAC :Khóa học này bao gồm cài đặt, quản trị Oracle RAC. Một khóa học tốt cho Oracle DBA muốn nâng cấp kỹ năng của mình cho Oracle RAC
Oracle Data Guard:Quản trị cơ sở dữ liệu cho Oracle 12C R2 :Khóa học này bao gồm cài đặt, quản trị Oracle Dataguard. Một khóa học tốt cho Oracle DBA, những người muốn nâng cấp kỹ năng của mình cho Oracle Dataguard


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. làm thế nào để chọn các bản ghi chẵn từ một bảng trong oracle?

  2. Cách giải quyết ORA-02014:không thể chọn CẬP NHẬT từ chế độ xem với DISTINCT, GROUP BY

  3. Cách lấy tên tháng từ ngày trong Oracle

  4. Cách tạo nhiệm vụ ADDM và kiểm tra báo cáo của nó

  5. Làm thế nào để gọi một hàm Oracle với Con trỏ tham chiếu là Tham số ngoài từ C #?