999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

性能優化技術在WEB應用系統中的探討

2016-08-09 07:23:32鄭林芳
中國新通信 2016年11期
關鍵詞:數據庫

鄭林芳

【摘要】 WEB應用系統目前作為信息化建設的主要模式,在各行各業得到廣泛應用。某市存量房網簽交易系統是服務于市民的二手房網上合同簽訂的交易平臺。通過對網簽平臺的硬件層面、應用部署層面、數據庫層面和應用系統層面對系統的性能瓶頸進行了分析,通過集群應用服務器、負載均衡、ORACLE預編譯等技術對系統進行性能優化,改善系統性能,以滿足系統全面應用的性能要求。

【關鍵詞】 性能優化 數據庫 SQL

本人在企業實踐過程中,有幸參于了某市存量房網簽交易系統性能優化的工作。WEB應用系統目前作為政府信息化建設的主要工作模式,在國內各工作場合都得到廣泛的應用。作為服務于市民的二手房網上簽訂合同的服務平臺,系統通過產權即時驗證、網簽即時鎖定、二手交易資金監管等手段,對市民之間的二手房買賣進行監督管理,有效地保障了市民的權益。系統推廣應用到全市后,漸漸出現了系統性能下降,請求超時等一些問題,因此對關系民生的網簽系統進行性能優化的工作迫在眉睫。

該存量房網簽系統采用JAVA的WEB應用技術開發,應用服務器和核心數據庫分別采用 WEBLOGIC10.0和ORACLE10G。

通過用戶反饋情況,高峰時期到現場對系統應用的前臺體驗以及詳細的調研情況,項目組深入分析系統了系統硬件層面、應用系統層面、數據庫層面可能存在性能瓶頸問題,最終從以下方面對此應用平臺進行了優化。

一、硬件服務器及應用部署層面的優化

WEB應用在服務器及應用部署層面上的性能優化,首先是確認服務器配置是否能承當得起應用的性能要求,是否需要進行更換升級。但同時必須考慮到,雖更換服務器短期內能解決部分問題,但是隨著時間的推移,問題可能還會繼續出現,仍需要深入分析服務器及應用部署可能存在的瓶頸和出現系統不穩定的潛在因素,因而從WEB服務器、數據庫服務器和網絡環境等方面進行詳細分析和探討:

1.1 WEB服務器的優化

WEB服務器主要以事務處理為主,需提供不間斷的服務,對可靠性的要求較高,故需要高性能的CPU處理和內存緩存能力,但對磁盤的性能要求不高。目前保障服務的可靠性,可對應用級和主機級采用多點冗余,同時提供對外服務的方式來保證系統平臺的可用性。在配置應用服務器時還應考慮應用的架構,對于采用.NET開發的系統,必須配置運行于WINDOWS SERVER服務器上,而對于使用JAVA框架開發的業務系統,建議配置UNIX或者LINUX作為應用服務器的操作系統,使穩定性達到最優。

針對存量房網簽系統,在服務器上做了以下優化:

第一:原系統采用JAVA技術開發,為了使應用效果達到最佳,調配了兩臺性能較強的SUN小型機作為應用服務器。

第二:對提供對外服務的WEB應用來說,每個服務配備過多內存并不能使內存處理能力達到最優,在實際應用測試中發現內存設置為4G時系統運行效率比較理想。根據兩臺服務器都配備有64G內存的現狀,項目組利用WEBLOGIC CLUSTER技術在每臺機器上部署8個相同的對外服務,使每個對外服務都配置4G內存,由WEBLOGIC ADMIN服務器統一管理兩臺服務器。同時對外服務時可達到16個對外服務端口,大大增加了處理能力,而且多線程的對外服務也大大增加了系統的可維護性,可對各線程分別進行更新維護。

第三:在實際應用中,對外WEB應用的優化還可以與云技術相結合。對多臺應用服務器進行虛擬化,根據需要虛擬主機,再將虛擬主機配備給不同的系統,達到服務器資源共享功用,減少主機配備的浪費,在本次優化中由于應用服務器為專用服務器并未使用虛擬化技術。

最后:為使對節點服務得到更有效配置,還通過硬件負載均衡將收到的服務請求用負載均衡設備進行轉發,本優化項目中采用了F5鏈路負載均衡設備來實現,比利用APACHE實現的軟件負載均衡更為有效。

在WEB服務器硬件設備進行調優后,系統平臺僅在電路檢修、大型系統補丁上線等情況下才暫停對外服務外,其余時間都能正常可靠提供服務,沒有出現系統崩潰宕機等情況。整體優化后平臺結構如圖1所示,在應用服務器和應用部署層面實現了多點冗余、負載均衡。

1.2數據庫服務器方面的優化

數據庫在系統中的應用越來越廣,其存儲的數據量也越來越大,存量房網簽系統其數據存儲量達到500G。網簽系統在提供服務時,很大一部分時間是耗費在數據庫操作方面,故數據庫的優化工作至關重要。數據庫服務器的主要任務是處理大量的數據操作,其中最影響系統性能的其中一個因素是磁盤的I/O讀寫速度,要解決好這個問題先要對磁盤進行硬件優化處理。

第一:采用磁盤陣列,把數據庫系統的磁盤進行條帶化處理,讓磁盤讀寫操作分布在RAID5的不同的磁盤中,減少集中讀寫單個磁盤的現象,從而增強I/O處理能力。

第二:為了增加可靠性,采用ORACLE RAC雙機負載均衡系統,提供強而有力的數據庫保障。

第三:在預算充分的情況下,采購配置固態硬盤,提高硬盤的讀寫速度。

為了保持系統的可用性,項目使用了兩臺數據服務器并配置為ORACLE RAC雙機負載,同時為了兼顧經濟性,采用了固態硬盤和普通磁盤混搭的方式來部署存儲,將附件、大字段等容量大但讀寫頻率較少的數據表存儲在普通磁盤上,而把經常進行讀寫和查詢操作的多記錄數據表存儲于固態硬盤之中,以達到優化數據庫對外服務的效率。

項目采用數據庫負載均衡后,應用配置采用圖2的方式實現數據庫連接,以達到雙機負載均衡的效果。

1.3網絡帶寬方面的優化

基于Web的存量房網簽系統對外提供的服務性能高低還與網絡的帶寬有直接的影響。系統優化前,服務只提供100M帶寬,為了提高服務性能,優化方案里采用了1000M的對外服務光纖,對網絡進行升級處理。

二、數據庫應用程序層面的優化

由于優化時存量房網簽平臺已投入使用了較長一段時間,業務邏輯已基本符合業務要求,所以此次性能優化,沒有將精力放在業務流程的優化上,而是放在硬件和數據庫的優化方面,因為數據庫的訪問速度直接影響著交易平臺的性能。數據庫硬件方面的優化上文中已進行討論,現將從數據庫應用程序方面來探討一下系統平臺的數據庫優化方案。

數據庫在應用程序優化通常可分為兩個方面:SQL語句和源代碼。對于源代碼,因涉及到對程序邏輯的改變,時間成本和風險上代價很高,并且對數據庫系統性能的提升收效有限;所以系統平臺在數據庫應用程序方面的優化主要以優化SQL語句為主。其原因有:第一:SQL語句消耗了70%至90%的數據庫資源;第二:SQL語句是對數據庫進行操作的惟一途徑,對數據庫系統的性能起著決定性的作用;第三:SQL語句獨立于程序設計邏輯,對SQL語句進行優化不會影響程序邏輯;第四:不同的SQL語句寫法有不同的性能,且差異非常大。

項目組在對平臺系統全面掃描分析過程中,發現數據庫并沒有處于最優水平。其問題主要集中在以下方面:

第一:系統數據庫部分頻繁調用的數據庫操作語句,未采用CACHE技術,未充分利用ORACLE的預編譯技術,使頻繁使用的語句僅因為個別參數不同而被數據庫服務器頻繁編譯,耗費大量的CPU工作時間。

第二:數據統計工作直接基于業務庫進行操作,在統計工作周期內數據讀取爭取資源嚴重。通過數據庫檢測,在統計周期內由于統計工作進行大量的數據讀取運算,使數據庫的讀寫性能嚴重降低,有時甚至影響到應用對外提供服務。

第三:由于產權認證的產權信息分別部署在各區分局,且各區分局的數據環境和數據基礎不統一,使整體性能得不到保證。

針對以上情況,使在不改變整體業務邏輯的情況,項目組在數據庫應用層面采取了多項措施來提高了系統平臺性能。

1、優化WEBLOGIC的數據連接配置。

在實際應用中數據庫連接配置過大將導致資源浪費,過低即導致資源的頻繁申請,影響效率,項目組根據WEBLOGIC的JDBC連接池機制來管理,將JDBC連接緩沖池設置為“常用均值+常用均值*50%”,分析得到常用均值設置為20個左右,即JDBC連接緩沖池個數設置為30個,同時將最大值設置為50,超出設置值后允許每次增加10個,這樣既保證了系統正常使用,同時運用連接池機制,將提高系統的效率。

2、查詢操作在各種數據庫操作中所占比重較大,而查詢操作所基于的SELECT語句在SQL語句中是代價最大的語句。

因此優質的SQL語句和高效的查詢優化技術,可以幫助提高應用系統的性能。在優化工作中檢查SQL語句,對SELECT查詢語句,盡量避免使用SELECT *的操作,字段提取按照“需要多少, 提取多少”的原則,查詢結果應返回給應用程序所需要的最少數量的行和列;如果系統確實需要每一列,最好在SQL語句中顯式呈現每一列名稱,這樣可以避免了服務器替換*所花費的時間,因為這個工作是通過查詢數據字典完成的。

3、采取逐步優化的方式對可以采取預編譯的數據庫操作語句,引入預編譯技術,提高CACHE的命中率。

在充分利用數據庫的預編譯技術下,對重復使用的數據庫語句使用變量注入的方式,減少SQL語句不必要的編譯,如“select A from t1 where L1=3”和“select A from t1 where L1=4”這類查詢語句,在數據庫中被認為是兩個不同語法的語句,會被重復編譯,如采用“select A from t1 where L1=X”,通過X的賦值來得查詢結果,數據庫系統僅會對第一次調用進行預編譯,后續的語句將不再做編譯,從而提高了數據庫的處理效率。

4、對于目前不便修改(多為對系統框架修改較大)的SQL語句進行登記造冊,作為下次系統進一步優化或升級的建議進行記錄。

5、對統計工作進行分類,在優化統計邏輯的同時,對時效性要求不是很高的統計工作,建立專用于統計的物化視圖。通過網絡業務不繁忙時段的同步,為統計工作提供物化視圖,以有效減少了同時工作對業務產生影響

三、應用系統層面的優化

項目在應用系統層面上優化主要考慮以下兩方面:

第一:將系統的頁面處理和事務處理分離,對事務進行封裝,部署時采用APACHE處理靜態頁面,WEBLOGIC處理業務邏輯的技術,使頁面處理和事務處理分離。

第二:對各區的數據認證充分利用ORACLE的數據同步技術,將原來的產權一次認證方式調整為二次認證的方式進行數據認證。產權認證數據庫每天晚上從各區的數據庫中同步產權 數據,市民在簽約時采用同步數據庫的數據進行第一次產權認證,由于采用了已集中的產權數據,數據庫索引齊備、數據庫部署在應用服務器的同網段,使整個簽約操作受數據庫性能影響降到最低。在市民間簽約提交時應用服務器提請第二次產權認證,第二次認證雖需讀取分局數據,但只需查證當天是否發生過數據改變即可,數據發生改變的認證不通過,數據無改變的驗證有效。此項應用層面的優化措施有效提高了應用服務器與數據庫服務器的交互效率,從而提高了系統性能。

但是在最終實施中由于考慮到存量房網簽系統單純的靜態頁面不多,并且測試發現使用APACHE不能實質性提高系統性能,所有沒有實施。反而將業務邏輯調整為二次驗證后,利用數據集中的優勢,提升應用性能,提高市民的現場應用滿意度。

四、總結

在本次項目優化中,通過以上措施的逐步實施,使存量房網簽系統數據庫服務器的負荷得到有效的減負,且沒有因為應用的全面推廣而出現超負荷宕機的現象發生;結合應用服務器的重新部署,服務器的響應速度明顯加快,基本實現了服務操作3秒內響應的優化目標,服務器整體性能運行正常,在近段時間市民購房熱潮中能沉穩應對,達到預期效果。

但是在本次優化中,仍有部分問題尚未解決,首先是部分頻繁調用的SQL語句由于對系統修改較大未能優化,加大了數據庫編譯壓力;

再次對關系民生的產權數據未能全面集中認證,設計二次認證也只不過是一個權宜之計,分布式存儲無法對實時的認證提供有效的、準確的認證,下一步數據遷移工作將會是一項重點;

第三,因為系統已試運行一年,基本業務邏輯已確定,業務邏輯的優化變更可能會導致系統出現其他錯誤,因此本次優化過程中,并沒有對業務邏輯做優化工作,只能將此工作留至下一次系統升級。

參 考 文 獻

[1] 王新根. Web后端性能優化關鍵技術研究[D]. 杭州:浙江大學.2012:15-25.

[2] 岑巍.數據庫優化在海量數據下的研究與應用[J].計算機時代.2015(2):33-35.

[3] 王曉東.淺談計算機性能優化技術中的問題及對策[J].計算機光盤與軟件應用.2014(3):311-312

[4] 謝書良.C#任務導引教程[M].北京:清華大學出版社.2012

猜你喜歡
數據庫
數據庫
財經(2017年15期)2017-07-03 22:40:49
數據庫
財經(2017年2期)2017-03-10 14:35:35
兩種新的非確定數據庫上的Top-K查詢
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
數據庫
財經(2015年3期)2015-06-09 17:41:31
數據庫
財經(2014年21期)2014-08-18 01:50:18
數據庫
財經(2014年6期)2014-03-12 08:28:19
數據庫
財經(2013年6期)2013-04-29 17:59:30
主站蜘蛛池模板: 亚洲91精品视频| 国产三级成人| 九九九国产| 天天躁日日躁狠狠躁中文字幕| 成人精品区| 韩国自拍偷自拍亚洲精品| www欧美在线观看| 91久久偷偷做嫩草影院精品| 国产精选自拍| 夜夜操天天摸| 久久人与动人物A级毛片| 在线观看视频99| 在线毛片网站| 久久香蕉国产线看观看精品蕉| 青草国产在线视频| 国产欧美综合在线观看第七页| 精品無碼一區在線觀看 | 亚洲精品无码日韩国产不卡| 99精品福利视频| 91小视频在线观看| 国产毛片高清一级国语 | 欧美啪啪网| 亚洲精品视频在线观看视频| 麻豆精品国产自产在线| 国产精品三级av及在线观看| 亚洲丝袜中文字幕| 国产精品三级av及在线观看| 伊人精品视频免费在线| 国产精品久久自在自2021| 内射人妻无码色AV天堂| 国产精品偷伦在线观看| 色亚洲成人| 丁香婷婷综合激情| 亚洲免费人成影院| 91福利在线看| 人妻少妇乱子伦精品无码专区毛片| 国产91线观看| 人妻无码AⅤ中文字| 午夜免费视频网站| 亚洲激情99| 无码AV动漫| 日韩午夜片| 久久semm亚洲国产| 亚洲国产成熟视频在线多多| 2020亚洲精品无码| 伊人天堂网| 色噜噜狠狠狠综合曰曰曰| 性视频一区| 国产一级精品毛片基地| 欧美午夜久久| 亚洲天堂网在线视频| 超清无码熟妇人妻AV在线绿巨人| 强奷白丝美女在线观看| 亚洲精品欧美日韩在线| 欧美色99| 国产精品久久久精品三级| 91偷拍一区| 2020国产在线视精品在| 亚洲综合天堂网| 污污网站在线观看| 欧美A级V片在线观看| 亚洲成aⅴ人片在线影院八| 国产三级国产精品国产普男人| 在线精品亚洲一区二区古装| 久久午夜夜伦鲁鲁片无码免费| 成人精品视频一区二区在线 | 国产精品偷伦视频免费观看国产 | 亚洲va欧美ⅴa国产va影院| 中文字幕 欧美日韩| 91在线一9|永久视频在线| 欧美97欧美综合色伦图| 伊在人亞洲香蕉精品區| 国产成人精品2021欧美日韩| 亚洲人妖在线| 99精品在线视频观看| 国产欧美在线| 四虎免费视频网站| 国产精品福利在线观看无码卡| 亚洲中文字幕23页在线| 宅男噜噜噜66国产在线观看| 一区二区日韩国产精久久| 99中文字幕亚洲一区二区|