国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

原來PHP對象比數(shù)組用更少的內(nèi)存

番茄西紅柿 / 1192人閱讀

摘要:一直以為的數(shù)組更節(jié)省內(nèi)存,從來沒有測試過,今天因為要讀取一個大配置文件作為。做了一次測試得出結(jié)論是使用對象保存數(shù)據(jù)更好,花費的內(nèi)存是數(shù)組的。

一直以為php的數(shù)組更節(jié)省內(nèi)存,從來沒有測試過,今天因為要讀取一個大配置文件作為pool。做了一次測試;

得出結(jié)論是 使用對象保存數(shù)據(jù)更好,花費的內(nèi)存是數(shù)組array的1/4。

測試代碼

class obj
{
    public $name;
    public $id;

    public function __construct($id,$name)
    {
        $this->name = $name;
        $this->id = $id;
    }
}
$max = 10000;
$old = memory_get_usage();
for ($i=0;$i<$max;$i++){
    $arrayList[] = [$i,$max];
}
$new = memory_get_usage();
echo "{$max}個數(shù)組(默認key)內(nèi)存消耗".($new-$old)."
";

$old = memory_get_usage();
for ($i=0;$i<$max;$i++){
    $arrayList[] = ["id"=>$i,"name"=>$max];
}
$new = memory_get_usage();
echo "{$max}個數(shù)組(和對象可以互相轉(zhuǎn)換的)內(nèi)存消耗".($new-$old)."
";

$old = memory_get_usage();
for ($i=0;$i<$max;$i++){
    $objectList[] = new obj($i,$max);
}
$new = memory_get_usage();
echo "{$max}個對象內(nèi)存消耗".($new-$old)."
";

結(jié)果

10000個數(shù)組(默認key)內(nèi)存消耗             4288440
10000個數(shù)組(和對象可以互相轉(zhuǎn)換的)內(nèi)存消耗  4284288
10000個對象內(nèi)存消耗                      1451320

大概比例

array:object = 4:1

越是復(fù)雜的數(shù)組,用過同等對象保存,內(nèi)存小更多

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/29254.html

相關(guān)文章

  • JavaScript代碼風(fēng)格要素

    摘要:刪除不必要的代碼。而簡化前的代碼包含的語法要素對于傳達代碼意義本身作用并不大。刪除不必要的代碼有時候,我們試圖為不必要的事物命名。例如,大多數(shù)情況下,你應(yīng)該省略僅僅用來當(dāng)做返回值的變量。你的函數(shù)名應(yīng)該已經(jīng)說明了關(guān)于函數(shù)返回值的信息。 原文地址 本文已在前端早讀課公眾號首發(fā):【第952期】JavaScript代碼風(fēng)格要素 譯者:墨白 校對:野草 1920年,由威廉·斯特倫克(Will...

    YPHP 評論0 收藏0
  • 影響數(shù)據(jù)檢索效率的幾個因素

    摘要:數(shù)據(jù)檢索有兩種主要形態(tài)。所以,回歸本質(zhì),影響數(shù)據(jù)檢索效率的就那么幾個因素。數(shù)據(jù)檢索干的是什么事情定位加載變換找到所需要的數(shù)據(jù),把數(shù)據(jù)從遠程或者磁盤加載到內(nèi)存中。減少的數(shù)據(jù)量的兩個手段,聚合和抽樣。 數(shù)據(jù)檢索有兩種主要形態(tài)。第一種是純數(shù)據(jù)庫型的。典型的結(jié)構(gòu)是一個關(guān)系型數(shù)據(jù),比如 mysql。用戶通過 SQL 表達出所需要的數(shù)據(jù),mysql 把 SQL 翻譯成物理的數(shù)據(jù)檢索動作返回結(jié)果。第...

    rollback 評論0 收藏0
  • PHP的性能優(yōu)化方法總結(jié)

    摘要:內(nèi)置函數(shù)的性能優(yōu)劣。產(chǎn)生額外開銷的錯誤抑制符號,最好別用不管是性能優(yōu)化和項目的健壯性等方面。在方法中遞增局部變量,速度是最快的。類似的方法調(diào)用所花費的時間接近于次的局部變量遞增操作。 什么情況之下,會遇到PHP性能問題?1:PHP語法使用不恰當(dāng)。2:使用PHP語言做了它不擅長的事情。3:使用PHP語言連接的服務(wù)不給力。4:PHP自身的短板(PHP自身做不了的事情)。5:我們也不知道的問...

    gekylin 評論0 收藏0
  • apache與nginx

    摘要:大型網(wǎng)站建議用自代的集群功能從個人過往的使用情況來看,的負載能力比高很多。最新的服務(wù)器也改用了。你對的需求決定你的選擇。在模式下,如果處理慢或者前端壓力很大的情況下,很容易出現(xiàn)進程數(shù)飆升,從而拒絕服務(wù)的現(xiàn)象。 1、nginx相對于apache的優(yōu)點: 輕量級,同樣起web 服務(wù),比apache占用更少的內(nèi)存及資源 抗并發(fā),nginx 處理請求是異步非阻塞的,而apache 則是阻塞型的...

    tyheist 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<