溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

ABAP應(yīng)用服務(wù)器的組成部分是什么

發(fā)布時間:2021-12-29 16:33:57 來源:億速云 閱讀:124 作者:iii 欄目:云計算

本篇內(nèi)容介紹了“ABAP應(yīng)用服務(wù)器的組成部分是什么”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!

一個典型的ABAP應(yīng)用服務(wù)器由下列組件構(gòu)成:

(1) Internet Communication Manager (ICM)

(2) ABAP dispatcher

(3) Task handler

(4) 若干工作進程,類型有dialog, update, print, background等等

(5) RFC Gateway

(6) Standalone enqueue server

(7) SAP Message Server

這些組件的關(guān)聯(lián)關(guān)系如下圖,一個SAP系統(tǒng)可以包含多個應(yīng)用服務(wù)器實例,但ASCS實例只能有一個。

ABAP應(yīng)用服務(wù)器的組成部分是什么

下面簡單介紹每個組件的功能。

Internet Communication Manager (ICM) - SAP NetWeaver

ICM是Netweaver服務(wù)器里一個單獨的進程,由ABAP Dispatcher啟動并監(jiān)控,負責SAP系統(tǒng)和外部的網(wǎng)絡(luò)通信。基于收到請求URL的解析,ICM會將請求分發(fā)給具體的handler進行處理。

ICM常用的與Internet交互的協(xié)議有HTTP,HTTPS,SMTP等。

下圖是ICM的架構(gòu)圖。

ABAP應(yīng)用服務(wù)器的組成部分是什么

Thread Control:該線程負責接收外界請求,從ICM線程池中取出空閑的工作線程,將請求的上下文交給工作線程。

工作線程:負責請求的具體處理,包含一個I/O處理器,可以用來進行網(wǎng)絡(luò)的輸入和輸出操作。對于不同協(xié)議類型的請求,Thread Control會調(diào)度包含了對應(yīng)協(xié)議插件的工作線程。

Watchdog:如果一個工作線程在任務(wù)處理時出現(xiàn)了等待某個響應(yīng)直至超時的情況,Watchdog會將該工作線程釋放,避免其無限期的等待,這樣該工作線程可以服務(wù)于其他請求。而Watchdog會繼續(xù)等待尚未到來的響應(yīng)。其后如果響應(yīng)到達,Watchdog會通知Thread control, 后者會繼續(xù)調(diào)用新的工作線程來處理。

Signal Handler:處理來自操作系統(tǒng)或者其他進程的信號。

Connection Info: 這張表維護了每個連接的狀態(tài)信息,包括內(nèi)存管道等。

Memory Pipes:內(nèi)存管道是基于內(nèi)存的通訊數(shù)據(jù)結(jié)構(gòu),用于將ICM接收到的外部請求包含的數(shù)據(jù)轉(zhuǎn)交給工作線程。

Internet Server Cache:服務(wù)器端的緩存,對于重復的請求可以加快響應(yīng)速度。

ABAP Dispatcher和工作進程

二者的關(guān)系在下圖體現(xiàn)得很清晰,ABAP應(yīng)用服務(wù)器上運行著許多不同類型的工作進程。

ABAP應(yīng)用服務(wù)器的組成部分是什么

SAP gateway

SAP系統(tǒng)之間,以及SAP系統(tǒng)與外部系統(tǒng)間通過基于TCP/IP的RFC調(diào)用進行通信,而gateway作為RFC調(diào)用分發(fā)的入口,如下圖所示:

ABAP應(yīng)用服務(wù)器的組成部分是什么

SAP Message Server

每個SAP系統(tǒng)只能包含一個消息服務(wù)器,該組件負責完成以下任務(wù):

(1) 作為SAP系統(tǒng)內(nèi)多個應(yīng)用服務(wù)器實例間的通訊渠道

(2) 對來自客戶端通過SAPGUI和SAP RFC登錄請求的負載分發(fā)

當一個應(yīng)用服務(wù)器實例啟動后,其dispatcher進程就會聯(lián)系消息服務(wù)器,向其報告自己能夠提供的服務(wù)類型。

SAP Router

一個單獨運行的程序,保護SAP系統(tǒng)不被未經(jīng)授權(quán)的請求所訪問。

ABAP應(yīng)用服務(wù)器的組成部分是什么

SAProuter在網(wǎng)絡(luò)連接拓撲結(jié)構(gòu)中,在SAP系統(tǒng)間以及SAP系統(tǒng)和外部網(wǎng)絡(luò)間,扮演著proxy的角色,是基于端口過濾的防火墻機制的一種補充,通常直接安裝在防火墻主機上。

SAPRouter維護了一張路由權(quán)限表,可以以此維護可以允許何種類型的請求同防火墻背后的SAP系統(tǒng)建立連接。

SAP Start Service

該服務(wù)運行在部署了SAP應(yīng)用服務(wù)器實例的服務(wù)器上,實現(xiàn)載體是windows的系統(tǒng)服務(wù)(sapstartsrv.exe)和Unix系統(tǒng)的Daemon進程(sapstartsrv).

SAP Start Service實現(xiàn)的功能有:

(1) 啟動和終止SAP應(yīng)用服務(wù)器實例,及其運行狀態(tài)的監(jiān)控

(2) 應(yīng)用服務(wù)器日志,跟蹤和配置文件的讀取與管理

Enqueue Server

實現(xiàn)ABAP應(yīng)用程序級別的鎖管理機制。應(yīng)用服務(wù)器實例上所有用戶當前會話持有的鎖,都維護在Enqueue服務(wù)器的鎖信息管理表中,該表維護在Enqueue服務(wù)器的內(nèi)存中,不會進行持久化,因此Enqueue服務(wù)器成為了ABAP系統(tǒng)的單點故障源之一:當Enqueue服務(wù)器由于各種原因運行時發(fā)生故障需要重啟時,維護在內(nèi)存中的鎖信息表的數(shù)據(jù)會丟失。

ABAP應(yīng)用服務(wù)器的組成部分是什么

因此為了確保Enqueue服務(wù)器的高可用性,通常將其放到單獨的物理主機上部署,甚至引入主從機制的多臺Enqueue服務(wù)器,將Master Enqueue服務(wù)器上的鎖信息管理表同步到其他Enqueue服務(wù)器上。

ABAP應(yīng)用服務(wù)器的組成部分是什么

“ABAP應(yīng)用服務(wù)器的組成部分是什么”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI