本篇內(nèi)容介紹了“ABAP應(yīng)用服務(wù)器的組成部分是什么”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
為龍南等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及龍南網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為網(wǎng)站設(shè)計、成都網(wǎng)站制作、龍南網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!一個典型的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實例只能有一個。
下面簡單介紹每個組件的功能。
ICM是Netweaver服務(wù)器里一個單獨的進程,由ABAP Dispatcher啟動并監(jiān)控,負(fù)責(zé)SAP系統(tǒng)和外部的網(wǎng)絡(luò)通信?;谑盏秸埱骍RL的解析,ICM會將請求分發(fā)給具體的handler進行處理。
ICM常用的與Internet交互的協(xié)議有HTTP,HTTPS,SMTP等。
下圖是ICM的架構(gòu)圖。
Thread Control:該線程負(fù)責(zé)接收外界請求,從ICM線程池中取出空閑的工作線程,將請求的上下文交給工作線程。
工作線程:負(fù)責(zé)請求的具體處理,包含一個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)到達(dá),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ù)器端的緩存,對于重復(fù)的請求可以加快響應(yīng)速度。
二者的關(guān)系在下圖體現(xiàn)得很清晰,ABAP應(yīng)用服務(wù)器上運行著許多不同類型的工作進程。
SAP系統(tǒng)之間,以及SAP系統(tǒng)與外部系統(tǒng)間通過基于TCP/IP的RFC調(diào)用進行通信,而gateway作為RFC調(diào)用分發(fā)的入口,如下圖所示:
每個SAP系統(tǒng)只能包含一個消息服務(wù)器,該組件負(fù)責(zé)完成以下任務(wù):
(1) 作為SAP系統(tǒng)內(nèi)多個應(yīng)用服務(wù)器實例間的通訊渠道
(2) 對來自客戶端通過SAPGUI和SAP RFC登錄請求的負(fù)載分發(fā)
當(dāng)一個應(yīng)用服務(wù)器實例啟動后,其dispatcher進程就會聯(lián)系消息服務(wù)器,向其報告自己能夠提供的服務(wù)類型。
一個單獨運行的程序,保護SAP系統(tǒng)不被未經(jīng)授權(quán)的請求所訪問。
SAProuter在網(wǎng)絡(luò)連接拓?fù)浣Y(jié)構(gòu)中,在SAP系統(tǒng)間以及SAP系統(tǒng)和外部網(wǎng)絡(luò)間,扮演著proxy的角色,是基于端口過濾的防火墻機制的一種補充,通常直接安裝在防火墻主機上。
SAPRouter維護了一張路由權(quán)限表,可以以此維護可以允許何種類型的請求同防火墻背后的SAP系統(tǒng)建立連接。
該服務(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ù)器日志,跟蹤和配置文件的讀取與管理
實現(xiàn)ABAP應(yīng)用程序級別的鎖管理機制。應(yīng)用服務(wù)器實例上所有用戶當(dāng)前會話持有的鎖,都維護在Enqueue服務(wù)器的鎖信息管理表中,該表維護在Enqueue服務(wù)器的內(nèi)存中,不會進行持久化,因此Enqueue服務(wù)器成為了ABAP系統(tǒng)的單點故障源之一:當(dāng)Enqueue服務(wù)器由于各種原因運行時發(fā)生故障需要重啟時,維護在內(nèi)存中的鎖信息表的數(shù)據(jù)會丟失。
因此為了確保Enqueue服務(wù)器的高可用性,通常將其放到單獨的物理主機上部署,甚至引入主從機制的多臺Enqueue服務(wù)器,將Master Enqueue服務(wù)器上的鎖信息管理表同步到其他Enqueue服務(wù)器上。
“ABAP應(yīng)用服務(wù)器的組成部分是什么”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!