• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于國(guó)產(chǎn)化環(huán)境下文件數(shù)據(jù)存儲(chǔ)的性能優(yōu)化

      2020-12-17 02:31:04宋建強(qiáng)
      商品與質(zhì)量 2020年50期
      關(guān)鍵詞:國(guó)產(chǎn)化線程服務(wù)器

      宋建強(qiáng)

      北京道達(dá)天際科技有限公司 北京 100890

      基于國(guó)產(chǎn)化硬件下的文件數(shù)據(jù)存儲(chǔ)應(yīng)用是基于國(guó)產(chǎn)化硬件軟件開發(fā)的創(chuàng)新應(yīng)用,不僅能夠提高在國(guó)產(chǎn)化硬件下開發(fā)的技術(shù)能力,而且能夠提高對(duì)國(guó)產(chǎn)化的認(rèn)識(shí)[1]。但是目前國(guó)產(chǎn)化硬件在性能以及CPU的處理能力和國(guó)際上通用的服務(wù)器比較存在一些不足的地方,尤其是在服務(wù)器性能和數(shù)據(jù)庫(kù)數(shù)據(jù)存儲(chǔ)。文件數(shù)據(jù)存儲(chǔ)應(yīng)用在國(guó)產(chǎn)化下硬件上部署經(jīng)常出現(xiàn)一些性能問(wèn)題,而且導(dǎo)致文件數(shù)據(jù)存儲(chǔ)應(yīng)用在國(guó)產(chǎn)化平臺(tái)下的程序運(yùn)行響應(yīng)時(shí)間會(huì)大大增加,嚴(yán)重時(shí)會(huì)導(dǎo)致整個(gè)服務(wù)崩潰的不良后果。

      為了使整個(gè)文件數(shù)據(jù)存儲(chǔ)應(yīng)用滿足用戶的使用要求,需要從軟件以及硬件兩個(gè)方面來(lái)進(jìn)行考慮在國(guó)產(chǎn)化硬件環(huán)境如何提過(guò)整個(gè)程序的運(yùn)行效率和速度,根據(jù)國(guó)產(chǎn)化硬件的特點(diǎn)和軟件特點(diǎn)進(jìn)行性能的優(yōu)化。

      1 性能層次

      根據(jù)文件數(shù)據(jù)存儲(chǔ)基應(yīng)用的結(jié)構(gòu)分析影響存儲(chǔ)性能因素包括硬件優(yōu)化和軟件優(yōu)化兩個(gè)方向來(lái)進(jìn)行優(yōu)化,硬件優(yōu)化包括服務(wù)器優(yōu)化、存儲(chǔ)優(yōu)化兩個(gè)方向,軟件優(yōu)化包括數(shù)據(jù)庫(kù)優(yōu)化、代碼優(yōu)化、線程優(yōu)化、存儲(chǔ)方式優(yōu)化。下面性能優(yōu)化根據(jù)性能層次所提出的方向來(lái)進(jìn)行,通過(guò)分析得到國(guó)產(chǎn)化環(huán)境下的文件數(shù)據(jù)存儲(chǔ)應(yīng)用性能層次如圖1

      圖1 文件數(shù)據(jù)存儲(chǔ)應(yīng)用性能層次

      2 性能分析

      目前國(guó)內(nèi)的國(guó)產(chǎn)化硬件逐漸成熟,主流包含銀河麒麟和中標(biāo)麒麟為代表的操作系統(tǒng)、龍芯和飛騰的服務(wù)器。國(guó)產(chǎn)化數(shù)據(jù)庫(kù)包括達(dá)夢(mèng)數(shù)據(jù)庫(kù)和神通數(shù)據(jù)庫(kù),并且這些國(guó)產(chǎn)化硬件和數(shù)據(jù)庫(kù)在國(guó)內(nèi)已經(jīng)使用比較廣泛[2]。

      文章主要以銀河麒麟操作系統(tǒng)、飛騰2000plus 服務(wù)器、神通數(shù)據(jù)庫(kù)和國(guó)產(chǎn)化存儲(chǔ)設(shè)備為環(huán)境基礎(chǔ)來(lái)進(jìn)行文件數(shù)據(jù)存儲(chǔ)應(yīng)用的性能不足分析,雖然國(guó)產(chǎn)化硬件配置比較高,但是依然出現(xiàn)以下問(wèn)題:①CPU 占用過(guò)高導(dǎo)致數(shù)據(jù)存儲(chǔ)以及訪問(wèn)速度效率變慢;②數(shù)據(jù)存儲(chǔ)(I/O)讀寫請(qǐng)求速度越來(lái)越慢;③服務(wù)器內(nèi)存很快占滿,緩沖占用大量?jī)?nèi)存;④存儲(chǔ)大數(shù)據(jù)文件存儲(chǔ)效率變慢;⑤Java 垃圾回收頻繁回收導(dǎo)致程序運(yùn)行效率變慢。

      3 性能優(yōu)化

      3.1 硬件性能優(yōu)化

      (1)服務(wù)器性能優(yōu)化。文件數(shù)據(jù)存儲(chǔ)應(yīng)用比較消耗服務(wù)器內(nèi)存會(huì)產(chǎn)生大量的緩存,采用定時(shí)清理緩存腳本定時(shí)清理緩存文件,保證物理可用內(nèi)存保持在一定的大小[3]。查詢服務(wù)器中不使用的進(jìn)程和服務(wù)并且停止服務(wù)器中沒(méi)有必要的進(jìn)程和服務(wù)能夠釋放一定的內(nèi)存和CPU 占用量提高服務(wù)器的性能。服務(wù)器TCP 進(jìn)行優(yōu)化提高網(wǎng)絡(luò)吞吐量。對(duì)java 虛擬機(jī)的內(nèi)存堆棧進(jìn)行優(yōu)化,根據(jù)服務(wù)器的內(nèi)存設(shè)定合理java 虛擬機(jī)的內(nèi)存參數(shù)最大值和最小值,能夠提高文件數(shù)據(jù)的存儲(chǔ)速度和能力。采取多服務(wù)器分布式集群部署,使用負(fù)載均衡機(jī)制保證程序在并發(fā)壓力下的穩(wěn)定和性能。

      (2)存儲(chǔ)性能優(yōu)化。文件數(shù)據(jù)存儲(chǔ)不能直接存儲(chǔ)在服務(wù)器上,尤其是占用服務(wù)器根目錄的空間,根目錄空間大小影響整個(gè)程序的運(yùn)行。最好的優(yōu)化是采用NAS 掛載將文件存儲(chǔ)在外部存儲(chǔ)。NAS掛載的目錄必須在服務(wù)rc.local 設(shè)置開啟自啟動(dòng)防止服務(wù)器重啟導(dǎo)致NAS 掛載斷掉影響程序運(yùn)行。NAS 掛載的存儲(chǔ)空間必須要盡量大的空間,存儲(chǔ)方式采用分布式分級(jí)分目錄避免文件太多出現(xiàn)訪問(wèn)存儲(chǔ)空間響應(yīng)時(shí)間太長(zhǎng)導(dǎo)致程序問(wèn)題,盡大可能避免NAS 存儲(chǔ)故障。

      3.2 軟件性能優(yōu)化

      (1)存儲(chǔ)數(shù)據(jù)日志長(zhǎng)度優(yōu)化。文件數(shù)據(jù)存儲(chǔ)管理為了保證存儲(chǔ)文件的安全性,在文件歸檔上傳以及下載采取文件的端點(diǎn)續(xù)傳續(xù)傳方式進(jìn)行文件數(shù)據(jù)上傳,為了保證文件數(shù)據(jù)的不丟失以及實(shí)時(shí)查看歸檔數(shù)據(jù)的狀態(tài)以及歸檔大小,將文件數(shù)據(jù)存儲(chǔ)時(shí)所有的日志實(shí)時(shí)存入ES 日志表中,但是當(dāng)文件特別大的時(shí)候存儲(chǔ)的文件存儲(chǔ)日志也會(huì)變得特別巨大,這樣會(huì)造成存儲(chǔ)日志性能下降,導(dǎo)致整個(gè)存儲(chǔ)應(yīng)用降低。

      為了解決這一性能問(wèn)題,當(dāng)存儲(chǔ)特別文件數(shù)目特別多的情況不能一次性將所有文檔歸檔存儲(chǔ),可以將日志存儲(chǔ)信息分段存儲(chǔ),這樣保證了存儲(chǔ)日志信息的速度性能。

      (2)內(nèi)外部接口方式優(yōu)化。各軟件通過(guò)接口頻繁調(diào)用獲取信息會(huì)大大增加CPU 處理壓力,太多的接口連接沒(méi)有及時(shí)返回響應(yīng)結(jié)果會(huì)導(dǎo)致大量接口處理排隊(duì)中等待結(jié)果返回導(dǎo)致系統(tǒng)出現(xiàn)阻塞情況,系統(tǒng)卡死。

      接口邏輯避免一次性查詢所有數(shù)據(jù)的邏輯,采用分頁(yè)查詢的方式。接口邏輯中盡量避免使用大量循環(huán)的邏輯,大量循環(huán)會(huì)導(dǎo)致訪問(wèn)速度變慢。

      (3)線程優(yōu)化。一般文件存儲(chǔ)應(yīng)用采用多線程上傳下載方式進(jìn)行,線程是是在進(jìn)程中執(zhí)行單元,進(jìn)程可以擁有一個(gè)線程或者多個(gè)線程,單線程的進(jìn)程執(zhí)行效率和運(yùn)行效率比較低,多線程可以提高程序的運(yùn)行效率提高系統(tǒng)資源的利用率提高系統(tǒng)的響應(yīng)速度[4]。但是,多線程并非是可以無(wú)限制創(chuàng)建,需要根據(jù)系統(tǒng)本身的處理能力來(lái)創(chuàng)建線程,采用線程池方式,線程池適當(dāng)設(shè)置線程大小,并且可以重復(fù)利用線程不新建線程減少創(chuàng)建線程帶來(lái)的系統(tǒng)壓力。及時(shí)對(duì)無(wú)用空閑的線程進(jìn)行清理,防止空閑線程占用資源無(wú)法釋放。

      (4)程序代碼優(yōu)化。程序代碼造成CPU 占用過(guò)高一般是因?yàn)榇a中出現(xiàn)死循環(huán)或者近似死循環(huán)的代碼,可以通過(guò)JDK 分析工具jastack 對(duì)占用CPU 過(guò)高的線程進(jìn)行分析,排查占用CPU 過(guò)高的代碼進(jìn)行修改[5]。代碼中大量使用循環(huán)或者嵌套循環(huán)的代碼需要進(jìn)行優(yōu)化,因?yàn)榇罅垦h(huán)會(huì)占用很高CPU 和內(nèi)存。對(duì)于文件量特別大的數(shù)據(jù),代碼中不能一次性讀取加載,一次性加載也會(huì)導(dǎo)致CPU 迅速增長(zhǎng)并且占用大量?jī)?nèi)存。

      (5)神通數(shù)據(jù)庫(kù)優(yōu)化以及表優(yōu)化。根據(jù)神通數(shù)據(jù)庫(kù)的特點(diǎn),初始化數(shù)據(jù)庫(kù)時(shí),在服務(wù)器內(nèi)存合理使用下盡可能大的設(shè)置數(shù)據(jù)緩沖區(qū)頁(yè)面數(shù);合理增大數(shù)據(jù)庫(kù)排序緩沖區(qū)使數(shù)據(jù)庫(kù)的數(shù)據(jù)排序速度到達(dá)最佳狀態(tài);合理增大日志緩沖區(qū)內(nèi)存避免數(shù)據(jù)庫(kù)日志過(guò)大影響程序的運(yùn)行效率,設(shè)置定時(shí)定期清理數(shù)據(jù)庫(kù)日志提高內(nèi)存的使用效率提高性能。

      數(shù)據(jù)庫(kù)表要避免存儲(chǔ)特別大的數(shù)據(jù)量數(shù)據(jù),特別大的數(shù)據(jù)存儲(chǔ)可能導(dǎo)致數(shù)據(jù)庫(kù)效應(yīng)慢,并且設(shè)計(jì)的表字段不能太多,必要時(shí)對(duì)表進(jìn)行分表設(shè)計(jì)。

      采用非關(guān)系性數(shù)據(jù)庫(kù)對(duì)一些數(shù)據(jù)進(jìn)行存儲(chǔ),優(yōu)化SQL 語(yǔ)句都是數(shù)據(jù)庫(kù)優(yōu)化的方式。

      4 性能優(yōu)化案例

      通過(guò)以上分析方法介紹,通過(guò)分析對(duì)影響文件數(shù)據(jù)存儲(chǔ)性能的指標(biāo)因素進(jìn)行對(duì)應(yīng)得優(yōu)化并且在國(guó)產(chǎn)化硬件環(huán)境進(jìn)行文件數(shù)據(jù)存儲(chǔ)驗(yàn)證,得出性能優(yōu)化前后的性能對(duì)比。

      4.1 國(guó)產(chǎn)化硬件環(huán)境

      國(guó)產(chǎn)化硬件環(huán)境如表1 所示

      表1 國(guó)產(chǎn)化硬件環(huán)境

      4.2 存儲(chǔ)性能優(yōu)化公式

      影響存儲(chǔ)性能的因素根據(jù)上述描述有服務(wù)器因素K1、數(shù)據(jù)庫(kù)因素K2、存儲(chǔ)因素K3、代碼因素K4、網(wǎng)絡(luò)因素K5,每一個(gè)因素都會(huì)導(dǎo)致存儲(chǔ)性能變慢或者存儲(chǔ)速度降為0,根據(jù)每個(gè)因素故障嚴(yán)重程度對(duì)故障分為無(wú)故障、輕微故障、一般故障、重大故障、嚴(yán)重故障、致命故障6 個(gè)級(jí)別故障、故障的嚴(yán)重程度越高,對(duì)存儲(chǔ)性能的影響越大程序恢復(fù)度越低,相應(yīng)的數(shù)值越低。根據(jù)因素故障對(duì)存儲(chǔ)性能影響得出如表2 所示。

      表2 各個(gè)因素故障表

      如上表的影響存儲(chǔ)性能各個(gè)因素故障的數(shù)值所示,對(duì)所有因素進(jìn)行綜合因素影響分析得到文件數(shù)據(jù)綜合評(píng)定系數(shù)公式如下:

      根據(jù)公式獲得性能綜合系數(shù)Pi,Pi越高性能越優(yōu)文件數(shù)據(jù)存儲(chǔ)效率越高,反之越差。

      4.3 存儲(chǔ)性能優(yōu)化前后對(duì)比

      (1)文件數(shù)據(jù)存儲(chǔ)應(yīng)用優(yōu)化前:在進(jìn)行數(shù)據(jù)歸檔時(shí)初始化切片參數(shù)設(shè)置成10 兆,進(jìn)行數(shù)據(jù)歸檔數(shù)據(jù)每分鐘平均存儲(chǔ)歸檔速度統(tǒng)計(jì),統(tǒng)計(jì)橫坐標(biāo)是時(shí)間為10 分鐘、20 分鐘、30 分鐘、40 分鐘、50 分鐘情況下,平均每分鐘文件數(shù)據(jù)歸檔的速度。性能優(yōu)化前發(fā)現(xiàn),文件數(shù)據(jù)存儲(chǔ)速度在一定時(shí)間內(nèi)增長(zhǎng)然后一直直線下降直到文件數(shù)據(jù)歸檔速度變成0。根據(jù)綜合性能系數(shù)評(píng)定,影響存儲(chǔ)性能因素在程序運(yùn)行一段時(shí)間內(nèi)未出現(xiàn)致命故障,后期出現(xiàn)嚴(yán)重以上故障,導(dǎo)致存儲(chǔ)速度降低。

      (2)文件數(shù)據(jù)存儲(chǔ)應(yīng)用優(yōu)化后:在進(jìn)行數(shù)據(jù)歸檔時(shí)初始化切片參數(shù)設(shè)置成10 兆,進(jìn)行數(shù)據(jù)歸檔數(shù)據(jù)每分鐘平均存儲(chǔ)歸檔速度統(tǒng)計(jì),統(tǒng)計(jì)橫坐標(biāo)是時(shí)間為10 分鐘、20 分鐘、30 分鐘、40 分鐘、50 分鐘情況下,平均每分鐘文件數(shù)據(jù)歸檔的速度。性能優(yōu)化后發(fā)現(xiàn),文件數(shù)據(jù)存儲(chǔ)速度在一定時(shí)間內(nèi)增加然后然后速度趨于穩(wěn)定。對(duì)影響存儲(chǔ)速度的各個(gè)因素進(jìn)行優(yōu)化,優(yōu)化后的因素處于最優(yōu)狀態(tài),速度也穩(wěn)定。

      文件數(shù)據(jù)存儲(chǔ)優(yōu)化前后的每秒數(shù)據(jù)歸檔的速度分別如圖2 和圖3 所示:

      圖2 性能優(yōu)化前

      圖3 性能優(yōu)化后

      5 結(jié)語(yǔ)

      基于國(guó)產(chǎn)化下的文件數(shù)據(jù)存儲(chǔ)是基于國(guó)產(chǎn)化硬件開發(fā)的一次具有實(shí)際意義的探索,研究了目前國(guó)產(chǎn)化硬件以及平臺(tái)的缺陷以及不足,并且基于硬件不足分析了如何使存儲(chǔ)效率得到最大的提升滿足使用要求,同時(shí)從硬件和軟件兩個(gè)角度對(duì)數(shù)據(jù)等方面進(jìn)行思考并且進(jìn)行優(yōu)化從而提升文件數(shù)據(jù)存儲(chǔ)應(yīng)用的使用性能,為之后其他應(yīng)用在國(guó)產(chǎn)化硬件下開發(fā)提供一定的性能優(yōu)化思路。

      猜你喜歡
      國(guó)產(chǎn)化線程服務(wù)器
      特大型橋梁供電系統(tǒng)國(guó)產(chǎn)化改造探討
      元器件國(guó)產(chǎn)化推進(jìn)工作實(shí)踐探索
      ASM-600油站換熱器的國(guó)產(chǎn)化改進(jìn)
      能源工程(2021年3期)2021-08-05 07:26:14
      基于國(guó)產(chǎn)化ITCS的衛(wèi)星導(dǎo)航仿真研究
      通信控制服務(wù)器(CCS)維護(hù)終端的設(shè)計(jì)與實(shí)現(xiàn)
      淺談linux多線程協(xié)作
      得形忘意的服務(wù)器標(biāo)準(zhǔn)
      計(jì)算機(jī)網(wǎng)絡(luò)安全服務(wù)器入侵與防御
      Linux線程實(shí)現(xiàn)技術(shù)研究
      么移動(dòng)中間件線程池并發(fā)機(jī)制優(yōu)化改進(jìn)
      东莞市| 巴彦县| 定日县| 方城县| 淳安县| 石景山区| 涪陵区| 乃东县| 虎林市| 彩票| 白河县| 临夏县| 肃宁县| 安乡县| 山阴县| 沛县| 安新县| 靖远县| 长治市| 怀远县| 白河县| 田林县| 满洲里市| 勐海县| 灵寿县| 乌兰浩特市| 武清区| 威信县| 大足县| 武义县| 樟树市| 石河子市| 乐清市| 大邑县| 名山县| 循化| 台安县| 海兴县| 澄迈县| 睢宁县| 措美县|