真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

linux學(xué)習(xí):持續(xù)集成篇--sonarqube代碼質(zhì)量管理平臺(tái)的介紹與安裝-04

1、SonarQube的介紹

創(chuàng)新互聯(lián)公司長(zhǎng)期為近千家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開(kāi)放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為常寧企業(yè)提供專業(yè)的成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì),常寧網(wǎng)站改版等技術(shù)服務(wù)。擁有十多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開(kāi)發(fā)。

官網(wǎng):https://www.sonarqube.org/ 

SonarQube是一個(gè)管理代碼質(zhì)量的開(kāi)放平臺(tái)。

 1.1 可以從七個(gè)維度檢測(cè)代碼質(zhì)量(為什么要用SonarQube)

  (1)復(fù)雜度分布(complexity):代碼復(fù)雜度過(guò)高將難以理解、難以維護(hù)

  (2)重復(fù)代碼(duplications):程序中包含大量復(fù)制粘貼的代碼是質(zhì)量低下的表現(xiàn)

  (3)單元測(cè)試(unit tests):統(tǒng)計(jì)并展示單元測(cè)試覆蓋率

  (4)編碼規(guī)范(coding rules):通過(guò)Findbugs,PMD,CheckStyle等規(guī)范代碼編寫

  (5)注釋(comments):少了可讀性差,多了看起來(lái)費(fèi)勁

  (6)潛在的Bug(potential bugs):通過(guò)Findbugs,PMD,CheckStyle等檢測(cè)潛在的bug

  (7)結(jié)構(gòu)與設(shè)計(jì)(architecture & design):依賴、耦合等

  Sonar可以集成不同的測(cè)試工具、代碼分析工具、持續(xù)集成工具、IDE。

  Sonar通過(guò)對(duì)代碼質(zhì)量分析結(jié)果數(shù)據(jù)進(jìn)行再加工處理,通過(guò)量化的方式來(lái)度量代碼質(zhì)量的變化,從而可以方便地對(duì)工程進(jìn)行代碼質(zhì)量管理。

  支持的語(yǔ)言包括:Java、PHP、C#、C、Cobol、PL/SQL、Flex 等。

 1.2 SonarQube平臺(tái)的組成

   數(shù)據(jù)庫(kù):存放SonarQube的配置數(shù)據(jù)、代碼質(zhì)量的快照數(shù)據(jù)

   Web服務(wù):用于查看SonarQube的配置數(shù)據(jù)、代碼質(zhì)量的快照數(shù)據(jù)

   分析器:對(duì)項(xiàng)目代碼進(jìn)行分析,生成質(zhì)量結(jié)果數(shù)據(jù)并存入數(shù)據(jù)庫(kù)中(分析器有多種,我們選用 SonarQube Maven Plugin)

        linux學(xué)習(xí):持續(xù)集成篇--sonarqube代碼質(zhì)量管理平臺(tái)的介紹與安裝-04

2、安裝

  2.1 配置MySQL

      結(jié)合SonarQube,Mysql數(shù)據(jù)庫(kù)的引擎最好使用InnoDB,可以提高性能。

      查看當(dāng)前引擎:

    mysql> show engines;

    linux學(xué)習(xí):持續(xù)集成篇--sonarqube代碼質(zhì)量管理平臺(tái)的介紹與安裝-04

     查看當(dāng)前默認(rèn)的引擎:

    mysql> show variables like '%storage_engine%';

    linux學(xué)習(xí):持續(xù)集成篇--sonarqube代碼質(zhì)量管理平臺(tái)的介紹與安裝-04

     修改 MySQL 存儲(chǔ)引擎為 InnoDB, 在配置文件/etc/my.cnf 

    [root@localhost ~]# vi /etc/my.cnf
    [mysqld]
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock
    user=mysql
    # Disabling symbolic-links is recommended to prevent assorted security risks
    symbolic-links=0
    #加入這條default-storage-engine=INNODB
    default-storage-engine=INNODB
    [mysqld_safe]
    log-error=/var/log/mysqld.log
    pid-file=/var/run/mysqld/mysqld.pid

     設(shè)置innodb_buffer_pool_size參數(shù)值

    設(shè)置得盡可能大一點(diǎn),這個(gè)參數(shù)主要作用是緩存 innodb 表的索引,數(shù)據(jù),插入數(shù)據(jù)時(shí)的緩沖

    默認(rèn)值:128M,專用 mysql 服務(wù)器設(shè)置的大小:操作系統(tǒng)內(nèi)存的 70%-80%最佳。

    [root@localhost ~]# vi /etc/my.cnf
    [mysqld]
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock
    user=mysql
    # Disabling symbolic-links is recommended to prevent assorted security risks
    symbolic-links=0
    default-storage-engine=INNODB
    #加入這條innodb_buffer_pool_size = 256M
    innodb_buffer_pool_size = 256M
    [mysqld_safe]
    log-error=/var/log/mysqld.log
    pid-file=/var/run/mysqld/mysqld.pid

     設(shè)置查詢緩存query_cache_size,最少設(shè)置15M

    [root@localhost ~]# vi /etc/my.cnf
    [mysqld]
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock
    user=mysql
    # Disabling symbolic-links is recommended to prevent assorted security risks
    symbolic-links=0
    default-storage-engine=INNODB
    innodb_buffer_pool_size = 256M
    #加入下面兩條query_cache_type=1 query_cache_size=32M
    query_cache_type=1
    query_cache_size=32M
    [mysqld_safe]
    log-error=/var/log/mysqld.log
    pid-file=/var/run/mysqld/mysqld.pid

 重啟后,驗(yàn)證緩存設(shè)置是否生效

    mysql> show variables like '%query_cache%';

        linux學(xué)習(xí):持續(xù)集成篇--sonarqube代碼質(zhì)量管理平臺(tái)的介紹與安裝-04

  2.2 創(chuàng)建sonarqube數(shù)據(jù)庫(kù)( UTF8 編碼 )

        linux學(xué)習(xí):持續(xù)集成篇--sonarqube代碼質(zhì)量管理平臺(tái)的介紹與安裝-04

  2.3 安裝SonarQube的WebServer,這里使用sonarqube-4.5.4.zip

      壓解,并重命名為sonarqube

     [root@localhost opt] unzip sonarqube-4.5.4.zip
     [root@localhost opt] mv sonarqube-4.5.4/ sonarqube

  編輯數(shù)據(jù)庫(kù)連接配置:

    [root@localhost sonarqube]# cd /opt/sonarqube/conf/
    [root@localhost conf]# vi sonar.properties
    #數(shù)據(jù)庫(kù)用戶名和密碼
    sonar.jdbc.username=root
    sonar.jdbc.password=123456
    
    #----- MySQL 5.x
    sonar.jdbc.url=jdbc:mysql://localhost:3306/sonarqube?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
    
    sonar.web.host=0.0.0.0
    sonar.web.context=/sonarqube
    sonar.web.port=9090

  2.4 啟動(dòng) SonarQube Web Server

    /opt/sonarqube/bin/linux-x86-64/sonar.sh start

     (初次啟動(dòng)會(huì)自動(dòng)建表和做相應(yīng)的初始化)

      瀏覽器輸入:http://192.168.175.9:9090/sonarqube/

    linux學(xué)習(xí):持續(xù)集成篇--sonarqube代碼質(zhì)量管理平臺(tái)的介紹與安裝-04

     默認(rèn)用戶名/密碼為 admin/admin

     設(shè)置自啟動(dòng):

        1、新建文件/etc/init.d/sonar,輸入如下內(nèi)容:

    #!/bin/sh  
    #  
    # rc file for SonarQube  
    #   
    # chkconfig: 345 96 10  
    # description: SonarQube system (www.sonarsource.org)  
    #  
    ### BEGIN INIT INFO  
    # Provides: sonar  
    # Required-Start: $network  
    # Required-Stop: $network  
    # Default-Start: 3 4 5  
    # Default-Stop: 0 1 2 6  
    # Short-Description: SonarQube system (www.sonarsource.org)  
    # Description: SonarQube system (www.sonarsource.org)  
    ### END INIT INFO  
    
    /opt/sonarqube/bin/linux-x86-64/sonar.sh $*
    exit $?

  2、授權(quán)與添加系統(tǒng)服務(wù)

    chmod 755 /etc/init.d/sonar
    chkconfig --add sonar

    3、修改/opt/sonarqube/conf/wrapper.conf

    wrapper.java.command=/home/jdk1.7.0_71/bin/java


當(dāng)前題目:linux學(xué)習(xí):持續(xù)集成篇--sonarqube代碼質(zhì)量管理平臺(tái)的介紹與安裝-04
文章源于:http://weahome.cn/article/psihop.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部