Weblogic安裝實施學習筆記(自總結帶目錄)
這是我安裝實施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 —提取程式在記憶體中的資料資訊,把該資訊文件提交給開發組或者中介軟體組,查詢故障原因。
相關文章
- 安卓學習筆記---開篇(目錄結構)安卓筆記
- Spring學習筆記目錄Spring筆記
- Laravel8學習筆記01 - 目錄結構Laravel筆記
- Linux 學習筆記--目錄結構及檔案基本操作Linux筆記
- RabbitMQ學習筆記-安裝MQ筆記
- autosar學習總目錄
- 學習筆記:openstack實驗環境安裝筆記
- 【HarmonyOS】BearPi-HM Nano學習筆記目錄NaN筆記
- Docker安裝(學習筆記一)Docker筆記
- Mysql學習筆記(安裝篇)MySql筆記
- matlab學習筆記一:安裝Matlab筆記
- 【PB案例學習筆記】-02 目錄瀏覽器筆記瀏覽器
- 階段性總結_學習筆記筆記
- Linux 學習筆記 - 軟體安裝Linux筆記
- golang學習筆記(1):安裝&helloworldGolang筆記
- Redis學習筆記【01】 - 安裝RedisRedis筆記
- Flutter學習筆記 - 安裝,映象,配置Flutter筆記
- Golang學習筆記-IDE安裝指南Golang筆記IDE
- Linux安裝SVN實現自動同步到Web目錄LinuxWeb
- 學習設計模式(總目錄)設計模式
- 【記錄】MySQL 學習筆記MySql筆記
- [記錄] MySQL 學習筆記MySql筆記
- 史丹佛大學2014機器學習教程中文筆記目錄機器學習筆記
- Linux學習——2 目錄結構Linux
- Redis安裝與配置(學習筆記一)Redis筆記
- 《Linux核心完全註釋》學習筆記:2.7 Linux核心原始碼的目錄結構Linux筆記原始碼
- GO 筆記-目錄Go筆記
- JAVA程式設計學習記錄(安裝Java)Java程式設計
- 【博學谷學習記錄】超強總結,用心分享|前端CSS總結(一)前端CSS
- vue+element UI 學習總結筆記(一)VueUI筆記
- 一個DBA總結的MySQL學習筆記MySql筆記
- git status 命令總結 —— Git 學習筆記 06Git筆記
- Java學習筆記記錄(二)Java筆記
- CANopen學習筆記(總)筆記
- Docker 學習筆記-基本概念與安裝Docker筆記
- 【Flutter 學習筆記一】Mac OS 安裝 FlutterFlutter筆記Mac
- 【每日學習記錄】使用錄影裝置記錄每天的學習
- 年度總結系列目錄