Weblogic安裝實施學習筆記(自總結帶目錄)

蘭海澤發表於2018-09-03

這是我安裝實施weblog時自總結的筆記。今天釋出在部落格上。由於個人知識的侷限性。難免會有錯誤的地方。歡迎指正,共同學習。謝謝。
另外我總結的也有Word格式的筆記。Word格式筆記目錄和排版更清晰。如有需要學習的朋友請私信我、或評論留郵箱獲取。

Word筆記目錄如截圖:

這裡寫圖片描述

Weblogic安裝實施學習筆記:

一:基礎知識

中介軟體:
一組介於應用伺服器和資料庫伺服器之間的輔助伺服器。

功能:
接受前端應用伺服器的資料庫訪問請求,彙總後,一次性連線資料庫,完成操作。即一次連線,執行多次操作,從而減少對資料庫伺服器的訪問請求,提供叢集效率。

常用軟體:
Weblogic, was, tomcat , tuxdo

Weblogic :
ORACLE公司推出的中介軟體軟體。
版本:
BEA WLS 10.0.X —-針對Oracle 10x
WLS 10.3.X —-針對Oracle 11g
WLS 12c —針對Oracle 12c

基本概念:
Weblogic   是使用java開發的
Machine   物理主機,即物理伺服器
Domain    域,一個服務環境,完成專案服務功能,域中加入多臺machine 
Server     伺服器,可認為是一臺虛擬機器。
一段獨立的,一個承載應用和資源的、可配置的、健壯的、多執行緒的Java應用程式
          前段客戶請求到達域後,有server響應處理,域中可以有N多個server

Cluster    叢集:多個server組成一個叢集,完成一個服務功能,可實現負載均衡。

Server 分類:
Admin server 管理伺服器,負載管理域中的所有內容。
人為通過admin server 管理整個域。
一般admin server 不做客戶響應,專做管理。
Managed server 被管理伺服器,專用於響應前端客戶訪問。

Weblogic 一個域的所有配置資訊,都存放在admin server內,managed server 初次啟動,需要到admin server上下載自己的配置資訊,接受工作並記錄到自己的配置檔案中,之後啟動,若配置沒有變化,就不需要啟動admin server

二:安裝JDK

1.上傳資料:到根目錄
jdk-6u45-linux-x64.bin
wls1036_generic.jar
如圖:

2.安裝JDK

# cd /
# chmod a+x jdk-6u45-linux-x64.bin   --增加執行許可權
# ./ jdk-6u45-linux-x64.bin            --執行安裝包,即解壓到 / 下
目的:安裝JDK到 / 下,安裝路徑,/ jdk1.6.0_45/

三:安裝weblogic

1.使用JDK安裝weblogic
# cd / JDK1.6.0_45 /bin
# Java –jar  / wls1036_generic.jar –mode=console  -log= /testdir001

-mode=console   ---指定字元介面安裝
-log=testdir001     ---指定安裝日誌的路徑

===============安裝過程大致如下=========
指定安裝目錄:/weblogic
3
是否接收安裝更新,選no
yes
預設
選擇安裝型別,選 定製 可見將要安裝的具體包,輸入[]中的數字可選中或取消
指定jdk安裝路徑,新增為本機的jdk路徑,如:/jdk1.6.0_45,取消自帶的路徑
預設
2
預設
確認路徑 確認 安裝包
開始安裝
============安裝完成============

四:域的建立和啟動

1.建立域:
cd /weblogic/wlserver_10.3/common/bin
./config.sh -mode=console —執行配置指令碼,建立域,字元介面安裝

安裝流程如下:

1 預設
1 預設模板
可用模板:預設1
預設名字:編輯名字:例如:AIXdomain
確認
目標位置:
管理員配置:賬號(預設weblogic),密碼:選擇2
密碼八位:12345678
確認密碼:3
確認:12345678
域模式配置:1.開發模式,2.生產模式,選擇2即可
java JDK 選擇:預設14
選擇可選配置:選擇1和2:1:管理伺服器 2:受管伺服器,叢集和計算機。
配置管理伺服器:預設名:adminserver不需要改,2:改地址 3.埠7001不用改
輸入地址IP:192.168.。。。。

配置值受管伺服器:配置名字,如:ms1, 地址IP:192.168.。。:埠7003不用改(7002ssh備用),5完成
配置值受管伺服器:配置名字,如:ms2, 地址IP:192.168.。。:埠改7004,5完成

配置叢集: 暫時不配置,直接下一步

配置計算機(machine): 暫時不配置,直接下一步

配置Unix計算機(machine):暫時不配置,直接下一步

正在建立:》》域建立成功。

2.域的配置檔案:

cd /weblogic/user_projects/domains/aixdomain/config

路徑下有配置檔案:config.xml,有ms1和ms2的配置

3.啟動域:

cd /weblogic/user_projects/domains/aixdomain/
./startWebLogic.sh  --實際呼叫./bin/下的startWebLogic.sh  
啟動過程中:輸入管理員賬號weblogic,密碼:12345678

瀏覽器輸入:http://192.168.11.11:7001/console
—瀏覽器登入admin server,開啟的介面稱為管理控制檯
—-在控制檯也可以配置受管伺服器,如配置ms3,

=> 左上側,點選,鎖定並編輯, 進行解鎖介面
=>左側–點環境–伺服器–主介面–可看到所有server
=>點 新建– 新建ms3,IP:192.168.11.11, 埠:7005 完成
=> 左上冊 點 啟用並儲存。也會寫入配置檔案config.xml

4.啟動被管server:

cd /weblogic/user_projects/domains/aixdomain/bin
./startManageWebLogic.sh ms1 http://192.168.11.11:7001
啟動過程中:輸入管理員賬號weblogic,密碼:12345678

去瀏覽去重新整理
定製介面—選擇–應用

5.後臺啟動:

後臺啟動:admin server,  manage server

cd /weblogic/user_projects/domains/aixdomain/servers
①:
cd AdminServer
mkdir security
cd security
vim boot.properties   內容如下(以後會變成亂碼)
   username=weblogic
   password=12345678
儲存退出:
②:
ms1 和ms2配置方式相同。Cp拷貝過去即可
cd /weblogic/user_projects/domains/aixdomain/servers
cp -r AdmiServer/serurity/ ./ms1
③:
./startWebLogic.sh &   ----這種方法不好,後臺資訊會輸入到前臺。

nohup  :使用者登出。程式不關閉
jobs            ---看後臺
ps             ----看程式
kill -9 程式號    ---殺程式   
nohub ./startWebLogic.sh &  
nohub ./startManageWebLogic.sh ms1 http://192.168.11.11:7001 &
------ /weblogic/user_projects/domains/aixdomain/bin下有nohub.out檔案記錄日誌

記錄日誌到不同檔案:

cd /weblogic/user_projects/domains/aixdomain/bin
nohub ./startWebLogic.sh >> adminserver.out & 
nohub ./startManageWebLogic.sh ms1 http://192.168.11.11:7001 >>ms1.out &

五:實驗

servlet
jdbc
weblogic 除了當中介軟體使用,也有web的功能,可以釋出網頁,可以代替Apache

負載均衡:
前端:lvs
oracle: orc

六:部署應用:

通過部署應用,來承接前端應用伺服器的資料訪問請求。
由於前端伺服器對客戶提供的服務方式不同。所以weblog上也要部署相應的應用程式:如:前端web伺服器,釋出jsp網頁,weblogic需要部署servlet應用。

實驗:
上傳testWLS資料到 /wang123
瀏覽器:登入管理控制檯
上側–解鎖-左側–部署–安裝–輸入安裝包路徑–選擇安裝包–按預設選項–直至完成–啟動 –啟用更改
控制–頁中–啟動 應用 測試頁–測試是否成功(I ove weblogic)

七:部署JDBC:

weblogic連線資料庫
步驟:
Oracle伺服器開啟資料庫
IE登入到管理控制檯=>解鎖介面=>左側,點 服務=>點 資料來源=>新建
=>選 一般資料來源(即單server的JDBC,其他的Grid… 和多資料來源是配給叢集的)
=>配置 資料來源名 school_Oracle,JNDI(給客戶方顯示的名字,一般和資料來源名一樣)
,選 資料庫型別為 Oracle
=>選 資料庫驅動程式,預設值 => 事務處理,預設
=>配置Oracle資料庫的資訊: 庫名:SchoolManage Oracle ip:192.168.10.100
埠:1521 登入SchoolManage的使用者、密碼(注:只可用普通使用者,不可用DBA賬號)
=>測試連線:
Oracle資料庫伺服器: 關閉防火牆,開啟監聽器,啟動schoolmanage庫
新建使用者xbh,給使用者授權(create session,reource,create table)
=>指定部署到哪個managed server上,即給該server上部署的應用程式使用
允許部署到多個managed server上
=>啟用更改

八:JDBC工作原理:

jdbc是一段java程式,負責連線資料庫,向資料庫傳送sql語句,並接受結果。
jdbc程式,開啟多個執行緒,連線資料庫,稱為連線執行緒池
執行緒池中,會開啟固定數量的執行緒。保持資料庫連線。前端訪問到達後,會從執行緒池中佔用一個未被使用的執行緒,訪問資料庫。執行緒不足時,會開啟新執行緒,執行緒池有最大值,達到最大值時。新的訪問請求將排隊等待。

九:JDBC執行緒配置:

瀏覽器管理控制檯:
資料來源–點進建立的資料來源–配置頁下的–連線池頁–設定執行緒池

初始容量:jdbc開啟後初始的執行緒個數
netstat -n |grep 1521 –檢視1521連線狀態
最大容量:執行緒池中最大的執行緒數
最小容量:執行緒不夠的時候開啟新執行緒連線,訪問結束,當關閉多餘執行緒時。留下的執行緒數
語句快取記憶體大小:最多快取多少條客戶sql語句

點 高階 展開高階頁面:
測試頻率:執行緒池中未被前端使用的執行緒,每多少秒測試下資料庫連線
測試表名稱,
信任空閒池連線的秒數(10):上次測試過後,在信任時間內,該執行緒別使用者使用,不需要再測試,步驟信任時間內,該執行緒被使用者使用,需要再做測試
收縮頻率(900):jdbc每多少秒,掃描所有執行緒,關閉斷開訪問卻沒有被是釋放的執行緒。

注:如果資料來源部署到多個manage server時。執行緒池設定是每個managed server 都遵守一套設定的
例:如jdbc部署到ms1和ms2上,連線池初始5個連線。最大20個連線,。則ms1上初始5個,ms2上初始5個,Oracle伺服器實際初始連線數10個。最大40個。

十:效能檢測:

檢視manage server資訊
—–執行緒使用狀態

瀏覽器登入到管理控制檯
左側–環境–環境–伺服器–ms1—

–監視 頁 –執行緒
執行執行緒總數:本server執行開啟的最大執行緒數
活動執行緒數:已開啟並保持連線的執行緒數
空閒執行緒數:開啟後,未被使用的執行緒數
佇列長度:使用到最大執行緒後,新的客戶訪問處於排隊等待狀態下的個數
獨佔執行緒:訪問佔據一個執行緒後,600秒沒有關閉,則轉入獨佔記憶體狀態(獨佔執行緒過多,需要檢視原因,)

—效能 頁
正常值:空閒率:50%–60%
故障值:空閒率<20%
點選: 垃圾回收, 清理記憶體垃圾,稱為GC

日誌檢視:
cd /weblogic/user_projects/domains/aixdomain/servers/下
每個server路徑下,有log日誌檔案

十一:故障解決:

查詢死鎖執行緒—殭屍執行緒 stuck thread
如常檢視manage server 效能時,發現獨佔執行緒給過多,記憶體空間率較低,
多次GC後,記憶體優化效果明顯。

方法1:
重啟manage server
ps -ef |grep ms1 –檢視ms1的程式,PID
kill -9 –關閉
關閉後,在nohup重啟程式。

方法2:
做執行緒快照,thread dump
ps -ef |grep ms1 –檢視ms1的程式,PID
kill -3 PID /stuck.log —提取程式在記憶體中的資料資訊,把該資訊文件提交給開發組或者中介軟體組,查詢故障原因。

相關文章