cbss2.0性能優(yōu)化_第1頁
cbss2.0性能優(yōu)化_第2頁
cbss2.0性能優(yōu)化_第3頁
cbss2.0性能優(yōu)化_第4頁
cbss2.0性能優(yōu)化_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、一:代碼部分com.sitech.dform.action.PageAction.java方法:page()新增緩存,根據頁面url把頁面緩存。com.sitech.dform.core.util.cache.DformCache.java方法:Cache<String, Object> getCache(String cacheName)新增緩存key,頁面urlcom.sitech.dform.core.util.wsParamsProcessing.BusinessCaller.java方法:getWSResult(BackendActions action) 新增從緩存取服

2、務請求結果,以及把服務結果放到緩存中。com.sitech.dform.core.util.wsParamsProcessing.request.AService.java方法:新增MD5,以及init方法中組裝請求報文和裝配請求報文,然后根據請求參數不同吧裝配完的請求報文放入到緩存中。com.sitech.dform.core.util.wsParamsProcessing.request.arrayPlat.ArrayPlatService.java方法:invoker()修正了緩存keycom.sitech.dform.core.util.wsParamsProcessing.reque

3、st.jsonPlat.JsonPlatService.java方法:getPackageParamsTemplate()請求報文做緩存,getAssembleTemplateParams()、setJsonValue(final JSONObject jsonObj, final String target, final Object vals)、修正請求報文參數獲取類型,避免重復轉換類型。invoker()修正發(fā)送請求方式(httputil由同步改為異步)、修改直接越過esb平臺向hsf發(fā)送請求,packRunning()組裝和裝配參數模板改到AService.java中。com.site

4、ch.dform.core.util.wsParamsProcessing.request.xmlPlat.XmlPlatService.java方法:invoker()修正了緩存keycom.sitech.dform.util.HttpUtil.java(異步調用)整個替換掉,由原來的同步調用改為異步發(fā)送請求(解決同步鎖)。com.sitech.dform.util.JavascriptUtil.java(js執(zhí)行順序修改)方法:process(String customClassName,String customValue, Map<String,Object> contex

5、t)由原來的代碼執(zhí)行js改為現(xiàn)在的.sitech.dform.core.util.wsParamsProcessing.response.DataPredeal.java方法:dealScript(Map<Integer,Object> row,List<BackendActionDSRelation> funcConfigs,Map<String,Object> context)參數修改對應JavascriptUtil中的process方法。com.sitech.dform.core.page.dom.DomHandlerSupp

6、ort.java方法:setCopyFlagAttr(Document doc, Element e)改動參數,傳參由原來的整個document元素改為需要設置屬性的片段中的元素,減少遞歸次數。perties新增zookeeper訪問地址com.sitech.dform.util.HttpUtilHsf.java新增類向hsf發(fā)送請求二:jar包部分新增jar:dubbo-2.5.3.jarzkclient-2.1.jarzookeeper-3.4.6.jarjar包升級:commons-code-1.6.jarcommons-logging-1.1.3.jarhttpcl

7、ient-4.3.6.jarhttpcore-4.3.3.jarhttpasyncclient-4.0.2.jarhttpcore-nio-4.3.2.jarhttpmime-4.3.6.jarjson-2014.1.7.jarjunit-4.8.2.jarunirest-java-1.4.5.jar刪除舊jar包commons-code-1.3.jarcommons-logging-1.1.1.jarhttpcore-4.2.3.jarhttpclient-4.2.3.jar三:工具部分(1)JProfiler 解決 Java 服務器的性能跟蹤1 、安裝 JBuilder

8、X 和 JProfiler 4.1.22 、運行 JProfiler , Session-> IDE integration tab, IDE 選擇Borland JBuilder7 to 2005,點擊Integrate按鈕,選擇JBuilder的安裝目錄,確認,會看到已經將JProfiler以OpenTool的形式,成功整合到JBuilder中3 、運行 JBuilder ,打開 Run->Configurations ,選擇或新建一個&#

9、160;Runtime ,在 Optimize 選項中就可以看到 JProfiler ,可以選擇每次運行程序新建一個 JProfiler 窗口的提示設置。4 、點擊 Optimize Project 按鈕,運行程序。5 、彈出如下的 JProfiler 窗口,確認相關的信息即可。6 、至此,就可以監(jiān)控本地服務器的各個方面的性能了。(詳細見(2)Probe界面化的tomcat監(jiān)控,可以監(jiān)控到tomcat的進程和其他1:probe.war包扔到tomcat的w

10、ebapp下2:tomcat-users-6-psi-probe.xml 文件替換原來的tomcat-users.xml(注意名字要改成tomcat-users.xml)3: 訪問 77:9091/probe(主機tomcat訪問地址下的probe工程) 界面化的tomcat監(jiān)控,可以監(jiān)控到tomcat的進程和其他。(3) perfmon4j日志輸出代碼段耗時,監(jiān)控代碼瓶頸1:endorsed 文件夾放到tomcat的lib 架包文件夾下面2:perfmonconfig.xml放到tomcat/conf/ 文件夾下注意:monitorName="c

11、om.sitech.dform" 為要監(jiān)控的包<appender name='myappender' className='org.perfmon4j.TextAppender' interval='1 minutes'/><threadTrace monitorName="com.sitech.dform" randomSamplingFactor="1"maxDepth="20" minDurationToCapture="5 ms"&

12、gt; /每隔5ms輸出一次 <appender name='myappender'/> /與上面appender name='myappender'需要一致3:catalina.sh 做相應的配置:export JAVA_OPTS="-server -Xms1400M -Xmx1400M -Xss512k -XX:+AggressiveOpts -XX:+UseBiasedLocking -XX:PermSize=128M -XX:MaxPermSize=256M -XX:+DisableExplicitGC -XX:MaxTenurin

13、gThreshold=31 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:LargePageSizeInBytes=128m -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -Djava.awt.headless=true -javaagent:./lib/endorsed/perfmon4j.jar=-f./conf/perfmonconfig

14、.xml,-ecom.sitech.dform"export JAVA_OPTS="-server -Xms1400M -Xmx1400M -Xss512k -XX:+AggressiveOpts -XX:+UseBiasedLocking -XX:PermSize=128M -XX:MaxPermSize=256M -XX:+DisableExplicitGC -XX:MaxTenuringThreshold=31 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -XX:+Use

15、CMSCompactAtFullCollection -XX:LargePageSizeInBytes=128m -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -Djava.awt.headless=true -javaagent:./lib/endorsed/perfmon4j.jar=-f./conf/perfmonconfig.xml,-ecom.sitech.dform"注意:monitorName="com.sitech.dform"與catalina.sh 中 -ecom.

16、sitech.dform 一致四:服務器優(yōu)化部分tomcat性能調優(yōu)1:catalina.sh中設置JVM內存2:server.xml中設置最大進程數3:server.xml中 可以大幅度提高java代碼往瀏覽器寫入html、js、css等等的效率(先壓縮后輸出)五:環(huán)境部署開發(fā)環(huán)境:0:8080 數據庫0:3306 用戶名/密碼:dynamic/ dynamic部署環(huán)境:1、虛擬機:988:9091/dform/CRM6/page/nbase/login/crmlogin.html14117:9091

17、18147:909118147:909248167:909148167:909268177:90912、物理機:47:90919110(20個節(jié)點)94:90919110(20個節(jié)點)95:90919110(20個節(jié)點)96:90919110(20個節(jié)點)97:90919110(20個節(jié)點) 部署圖3、統(tǒng)一部署腳本paramiko-config.py集群統(tǒng)一

18、執(zhí)行動作腳本#!/usr/bin/env python import paramikoimport osimport datetimehome=os.environ'HOME'print ' home is: ', homefrom ConfigParser import ConfigParserConfigFile=home+'/commons/config.ini'print ConfigFileconfig=ConfigParser()config.read(ConfigFile)hostname1=''.join(conf

19、ig.get('IP','ipaddress')address=hostname1.split('')print addressusername=os.getlogin()print 'Received username is: ', usernamepassword=os.getlogin() print 'Received password is: ', passwordport=26622local_dir='/tmp/'remote_dir='/tmp/'while True

20、: str ='. /.bash_profile;'str1 = raw_input('Enter your command: '); if str1='exit': breakprint 'Received command is : ', str1 #str2=str1.join(str) str2=str+str1if _name_="_main_": for ip in address: paramiko.util.log_to_file('paramiko.log') s=paramik

21、o.SSHClient() s.set_missing_host_key_policy(paramiko.AutoAddPolicy() s.connect(hostname=ip,port=port,username=username,password=password) print 'Received command is : ', str2 # stdin,stdout,stderr=s.exec_command('. /.bash_profile') stdin,stdout,stderr=s.exec_command(str2) print ip # print stdin.read() # print stderr.read() print stdout.read() s.close()scpall.sh 集群統(tǒng)一復制腳本#!/bin/bashUSER=whoamiCPWD=pwdecho $CPWDfor i in 30.177;doIP_ADDR="172.16.212.$i"echo "IP_ADDR=$IP_ADDR"nohup scp -P 26622 -r

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論