php的serialize序列化和json性能測試

最近需要對大數組做存儲,需要在serialize序列化和json之間做了選擇。因此需要做了性能測試。

在php5.2之前對數組存儲的時候,大都使用serialize系列化。php5.2之后,開始內置了 JSON 的支持。

在網上看到有些資料說:json_encode和json_decode比內置的serialize和unserialize函數要高效。耳聞不如眼見,眼見不一定為實。那就用實際數據測試吧…..

我們先理解概念:

一、 序列化

序列化是將對象狀態轉換為可保持或可傳輸的格式的過程。與序列化相對的是反序列化,它將流轉換為對象。這兩個過程結合起來,可以輕松地存儲和傳輸數據。

將對象的狀態信息轉換為可以存儲或傳輸的窗體的過程。 在序列化期間,對象將其當前狀態寫入到臨時或持久性存儲區。以后,可以通過從存儲區中讀取或反序列化對象的狀態,重新創建該對象。

通常,對象實例的所有字段都會被序列化,這意味著數據會被表示為實例的序列化數據。這樣,能夠解釋該格式的代碼有可能能夠確定這些數據的值,而不依賴于該成員的可訪問性。類似地,反序列化從序列化的表示形式中提取數據,并直接設置對象狀態,這也與可訪問性規則無關。 對于任何可能包含重要的安全性數據的對象,如果可能,應該使該對象不可序列化。如果它必須為可序列化的,請嘗試生成特定字段來保存不可序列化的重要數據。如果無法實現這一點,則應注意該數據會被公開給任何擁有序列化權限的代碼,并確保不讓任何惡意代碼獲得該權限。

二、 JSON

JSON,JavaScript Object Notation,一種更輕、更友好的用于接口(AJAX、REST等)數據交換的格式。 JSON是結構化數據串行化的文本格式,作為XML的一種替代品,用于表示客戶端與服務器間數據交換有效負載的格式。它是從ECMAScript語言標準衍生而來的。JSON的設計目標是使它成為小的、輕便的、文本的,而且是JavaScript的一個子集。JSON采用完全獨立于語言的文本格式,但是也使用了類似于C語言家族的習慣(包括C, C++, C#, Java, JavaScript, Perl, Python等)。這些特性使JSON成為理想的數據交換語言。易于人閱讀和編寫,同時也易于機器解析和生成。

JSON建構有兩種結構:
1. “名稱/值”對的集合(A collection of name/value pairs)。不同的語言中,它被理解為對象(object),記錄(record),結構(struct),字典(dictionary),哈希表(hash table),有鍵列表(keyed list),或者關聯數組 (associative array)。

2.值的有序列表(An ordered list of values)。在大部分語言中,它被理解為數組(array)。

測試:

三、 實際測試

在PHP 5.3下執行:我們先使用小的數據做測試:

<?php    
$target = array (    
   'battle_id'=> 257    
   ,'user_id'=> 41248    
   ,'user_id2'=> 23989    
   ,'player'=> 41248    
   ,'formation'=> Array    
        (    
           '41248'=> 1    
           ,'23989'=> 2    
        )    
    
   ,'result'=> 1    
   ,'battle_type'=> 1    
   ,'speed'=> Array    
        (    
           '41248'=> 0    
           ,'23989'=> 0    
        )    
        );    
    
$json = json_encode($target);    
$seri = serialize($target);    
    
echo "json :" , strlen($json) ,'<br/>';    
echo "serialize :", strlen($seri) ,'<br/>';    
    
$stime = microtime(true);    
for ($i = 0; $i < 10000; $i ++) {    
    json_encode($target);    
}    
$etime = microtime(true);    
    
echo "json_encode :", ($etime - $stime) ,'<br/>';    
    
//----------------------------------    
    
$stime = microtime(true);    
for ($i = 0; $i < 10000; $i ++) {    
   json_decode($json,true);    
}    
$etime = microtime(true);    
    
echo "json_decode :", ($etime - $stime),'<br/>';    
    
//----------------------------------    
$stime = microtime(true);    
for ($i = 0; $i < 10000; $i ++) {    
    serialize($target);    
}    
$etime = microtime(true);    
    
echo "serialize :", ($etime - $stime) ,'<br/>';    
    
//----------------------------------    
$stime = microtime(true);    
for ($i = 0; $i < 10000; $i ++) {    
    unserialize($seri);    
}    
$etime = microtime(true);    
    
echo "unserialize :", ($etime - $stime),'<br/>';    
    
?>

測試結果:

json :156
serialize :222
json_encode :0.1087498664856
json_decode :0.12652111053467
serialize :0.041656017303467
unserialize :0.040987968444824

測試結果看出json效率稍微比serialize差點,在php5.2可能會更差。應該是在php5.3之后,json擴展做了優化。

然后使用大數組做測試(代碼放到最后,因為代碼的數組比較長):

測試結果:

json :5350
serialize :8590
json_encode :0.90479207038879
json_decode :1.753741979599
serialize :1.3566699028015
unserialize :1.3003630638123

我們可以看出,serialize比json差了快一個數量級。

總結:

1) 空間的比較

serialize在編碼后大概是json的1.5倍。

原因:

  • serialize后字符串包含了子串的長度,這可能是速度方面的優化,但是測試結果不盡人意。

  • serialize有更加詳細的類型區分,而json只有四種類型,并且是以簡單的符號表示。

  • 2)速度的比較

  • 在較小數據的情況下, serialize比json快數量級。

    在大數據量的情況下,json比serialize稍微差一點

    3)處理對象
    json無法處理對象方法等數據。

    4)使用范圍

  • 在前后端交互一般都使用JSON,另外,目前JSON只支持UTF-8編碼的數據。

    序列化使用serialize,特別是對象的存儲。這是其存在的意義。

    與對象無關的數據存儲可以使用json,如包含大量數字的數組等。

  1. <?php  
      
    $target = array (  
       'battle_id'=> 257  
       ,'user_id'=> 41248  
       ,'user_id2'=> 23989  
       ,'player'=> 41248  
       ,'formation'=> Array ('41248'=> 1  ,'23989'=> 2)  
       ,'result'=> 1  
       ,'battle_type'=> 1  
       ,'speed'=> Array( '41248'=> 0,'23989'=> 0  )  
       ,'attacker'=> Array(  
        '1'=> Array (  
                       'user_id'=> 41248  
                       ,'soldier_id'=> 28  
                       ,'prototype_id'=> 4  
                       ,'bid'=> 1  
                       ,'level'=> 1  
                       ,'rare'=> 1  
                       ,'skill_id'=> 1  
                       ,'totalhp'=> 3997  
                       ,'hp'=> 3997  
                       ,'attack_general'=> 346  
                       ,'attack_skill'=> 596  
                       ,'attack_explode'=> 458  
                       ,'attack_type'=> 1  
                       ,'defense'=> 0  
                       ,'anger'=> 50  
                       ,'dodge'=> 2  
                       ,'crit'=> 2  
                       ,'block'=> 2  
                       ,'block_effect'=> 0.5  
                       ,'crit_effect'=> 2  
                       ,'foramtion_effect'=> 0)  
               ,'4'=> Array (  
                       'user_id'=> 41248  
                       ,'soldier_id'=> 29  
                       ,'prototype_id'=> 2  
                       ,'bid'=> 1  
                       ,'level'=> 1  
                       ,'rare'=> 1  
                       ,'skill_id'=> 1  
                       ,'totalhp'=> 3555  
                       ,'hp'=> 3555  
                       ,'attack_general'=> 396  
                       ,'attack_skill'=> 581  
                       ,'attack_explode'=> 418  
                       ,'attack_type'=> 1  
                       ,'defense'=> 0  
                       ,'anger'=> 50  
                       ,'dodge'=> 2  
                       ,'crit'=> 2  
                       ,'block'=> 0  
                       ,'block_effect'=> 0.5  
                       ,'crit_effect'=> 2  
                       ,'foramtion_effect'=> 0  
                    )  
               ,'5'=> Array                (  
                       'user_id'=> 41248  
                       ,'soldier_id'=> 30  
                       ,'prototype_id'=> 6  
                       ,'bid'=> 1  
                       ,'level'=> 1  
                       ,'rare'=> 1  
                       ,'skill_id'=> 1  
                       ,'totalhp'=> 3043  
                       ,'hp'=> 3043  
                       ,'attack_general'=> 351  
                       ,'attack_skill'=> 540  
                       ,'attack_explode'=> 474  
                       ,'attack_type'=> 1  
                       ,'defense'=> 0  
                       ,'anger'=> 50  
                       ,'dodge'=> 2  
                       ,'crit'=> 2  
                       ,'block'=> 0  
                       ,'block_effect'=> 0.5  
                       ,'crit_effect'=> 2  
                       ,'foramtion_effect'=> 0)  
               ,'7'=> Array (  
                       'user_id'=> 41248  
                       ,'soldier_id'=> 37  
                       ,'prototype_id'=> 2  
                       ,'bid'=> 1  
                       ,'level'=> 1  
                       ,'rare'=> 1  
                       ,'skill_id'=> 1  
                       ,'totalhp'=> 3491  
                       ,'hp'=> 3491  
                       ,'attack_general'=> 393  
                       ,'attack_skill'=> 532  
                       ,'attack_explode'=> 456  
                       ,'attack_type'=> 1  
                       ,'defense'=> 0  
                       ,'anger'=> 50  
                       ,'dodge'=> 2  
                       ,'crit'=> 2  
                       ,'block'=> 0  
                       ,'block_effect'=> 0.5  
                       ,'crit_effect'=> 2  
                       ,'foramtion_effect'=> 0   ))  
       ,'defender'=> Array(  
               '2'=> Array(  
                       'user_id'=> 23989  
                       ,'soldier_id'=> 24  
                       ,'prototype_id'=> 1  
                       ,'bid'=> 1  
                       ,'level'=> 1  
                       ,'rare'=> 1  
                       ,'skill_id'=> 1  
                       ,'totalhp'=> 3230  
                       ,'hp'=> 3230  
                       ,'attack_general'=> 390  
                       ,'attack_skill'=> 567  
                       ,'attack_explode'=> 442  
                       ,'attack_type'=> 1  
                       ,'defense'=> 0  
                       ,'anger'=> 50  
                       ,'dodge'=> 2  
                       ,'crit'=> 2  
                       ,'block'=> 0  
                       ,'block_effect'=> 0.5  
                       ,'crit_effect'=> 2  
                       ,'foramtion_effect'=> 0)  
               ,'5'=> Array(  
                       'user_id'=> 23989  
                       ,'soldier_id'=> 25  
                       ,'prototype_id'=> 2  
                       ,'bid'=> 1  
                       ,'level'=> 1  
                       ,'rare'=> 1  
                       ,'skill_id'=> 1  
                       ,'totalhp'=> 3400  
                       ,'hp'=> 3400  
                       ,'attack_general'=> 379  
                       ,'attack_skill'=> 536  
                       ,'attack_explode'=> 405  
                       ,'attack_type'=> 1  
                       ,'defense'=> 0  
                       ,'anger'=> 50  
                       ,'dodge'=> 2  
                       ,'crit'=> 2  
                       ,'block'=> 0  
                       ,'block_effect'=> 0.5  
                       ,'crit_effect'=> 2  
                       ,'foramtion_effect'=> 0 )  
               ,'7'=> Array(  
                       'user_id'=> 23989  
                       ,'soldier_id'=> 26  
                       ,'prototype_id'=> 6  
                       ,'bid'=> 1  
                       ,'level'=> 1  
                       ,'rare'=> 1  
                       ,'skill_id'=> 1  
                       ,'totalhp'=> 3669  
                       ,'hp'=> 3669  
                       ,'attack_general'=> 362  
                       ,'attack_skill'=> 549  
                       ,'attack_explode'=> 426  
                       ,'attack_type'=> 1  
                       ,'defense'=> 0  
                       ,'anger'=> 50  
                       ,'dodge'=> 2  
                       ,'crit'=> 2  
                       ,'block'=> 0  
                       ,'block_effect'=> 0.5  
                       ,'crit_effect'=> 2  
                       ,'foramtion_effect'=> 0 )  
               ,'9'=> Array(  
                       'user_id'=> 23989  
                       ,'soldier_id'=> 27  
                       ,'prototype_id'=> 1  
                       ,'bid'=> 1  
                       ,'level'=> 1  
                       ,'rare'=> 1  
                       ,'skill_id'=> 1  
                       ,'totalhp'=> 3618  
                       ,'hp'=> 3618  
                       ,'attack_general'=> 326  
                       ,'attack_skill'=> 510  
                       ,'attack_explode'=> 419  
                       ,'attack_type'=> 1  
                       ,'defense'=> 0  
                       ,'anger'=> 50  
                       ,'dodge'=> 2  
                       ,'crit'=> 2  
                       ,'block'=> 0  
                       ,'block_effect'=> 0.5  
                       ,'crit_effect'=> 2  
                       ,'foramtion_effect'=> 0) )  
       ,'battle_process'=> Array(  
               '0'=> Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
      
               ,'1'=> Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
      
               ,'2'=> Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
               ,'3'=> Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
      
               ,'4'=> Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
               ,'5'=> Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
      
               ,'6'=> Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
      
               ,'7'=> Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
               ,'8'=> Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
      
               ,'9'=> Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
               ,'10'=> Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
               ,'11'=> Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
      
               ,'12'=> Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
               ,'13'=> Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
               ,'14'=> Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
      
               ,'15'=> Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
               ,'16'=> Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
               ,'17'=> Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
      
               ,'18'=> Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
               ,'19'=> Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
      
               ,'20'=>Array(  
                       'user_id'=> 41248  
                       ,'asid'=> 28  
                       ,'bsid'=> Array( '0'=> 26 )  
                       ,'harm'=> Array('0'=> 1650)  
                       ,'dhp'=> Array('0'=> 2019  )  
                       ,'attacker_anger'=> 66  
                       ,'defender_anger'=> Array('0'=> 94 )  
                       ,'skill'=> 0  
                       ,'state'=> 0  
                    )  
            )  
      
    );  
      
       
    $json = json_encode($target);  
    $seri = serialize($target);  
      
    echo "json :" , strlen($json) ,'<br/>';  
    echo "serialize :", strlen($seri) ,'<br/>';  
      
    $stime = microtime(true);  
    for ($i = 0; $i < 10000; $i ++) {  
        json_encode($target);  
    }  
    $etime = microtime(true);  
      
    echo "json_encode :", ($etime - $stime) ,'<br/>';  
      
    //----------------------------------  
      
    $stime = microtime(true);  
    for ($i = 0; $i < 10000; $i ++) {  
       json_decode($json,true);  
    }  
    $etime = microtime(true);  
      
    echo "json_decode :", ($etime - $stime),'<br/>';  
      
    //----------------------------------  
    $stime = microtime(true);  
    for ($i = 0; $i < 10000; $i ++) {  
        serialize($target);  
    }  
    $etime = microtime(true);  
      
    echo "serialize :", ($etime - $stime) ,'<br/>';  
      
    //----------------------------------  
    $stime = microtime(true);  
    for ($i = 0; $i < 10000; $i ++) {  
        unserialize($seri);  
    }  
    $etime = microtime(true);  
      
    echo "unserialize :", ($etime - $stime),'<br/>';  
      
    ?>

轉自:http://blog.csdn.net/hguisu/article/details/7651730

原創文章,作者:s19930811,如若轉載,請注明出處:http://www.www58058.com/2808

(0)
s19930811s19930811
上一篇 2015-04-07 19:19
下一篇 2015-04-07 19:20

相關推薦

  • 第六周作業-練習題sed,crontab,bash

    1、復制/etc/rc.d/rc.sysinit文件至/tmp目錄,將/tmp/rc.sysinit文件中的以至少一個空白字符開頭的行的行首加#;    方法一用sed:          方法二用vim       &…

    Linux干貨 2017-01-16
  • 馬哥教育網絡班22期+第1周課程練習

    1、描述計算機的組成及其功能 CPU:運算器、控制器、寄存器、緩存 存儲器:內存,RAM(Random Access Memory) Input:下指令,提供數據等 Output:輸出數據加工的結果 2、按系列羅列Linux的發行版,并描述不同發行版之間的聯系與區別 Debian系列         ubuntu &n…

    Linux干貨 2016-08-15
  • 打造自己小小的RPM包

    關于源碼RPM包的安裝于制作 什么是RPM與SRPM? 1     RPM: 1     SRPM: 2     SRPM的安裝 2 一 .利用rpmbuild默認安裝SRPM檔案 2 二.配置路徑與需要的軟件功能模塊 3  &n…

    Linux干貨 2016-08-24
  • 時間、screen、echo等——Linux基本命令(5)

    1.     時間 (1)查詢時間: date          +%F  年月日          +%T  時分秒  &nbs…

    2017-07-13
  • 下載編譯安裝httpd 2.4最新版本

    關于這個問題分三步講:1.下載最新版本;2.編譯;3.安裝 一:下載httpd 2.4的最新版本:(這里以Centos 7為例,Centos 6里用的是2.2版本的) 下載的話如何找下載路徑—–>下載后是存在windows下,如何將其移進linux中  1.下載路徑: 當然我們現在只要是碰到不會或者不知道的東西,通常會…

    2017-08-26
  • N25-第二周總結

    linux bassic The second week of blogging 一、linux中的文件,及文件操作管理命令 1. 文件概念 存儲空間存儲的一段流式數據,對數據可以做到按名存取。 linux中的文件具有的特點是:可通過操作系統或者程序對外提供信息,也能對內輸入信息,可以被創建,刪除。linux中,文件有特別重要的意義,他們為操作系統和設備提供…

    Linux干貨 2016-12-11
欧美性久久久久