abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 22:44 | IT novinky

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 3
    včera 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | IT novinky

    Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Nová verze

    Po roce vývoje od vydání verze 1.24.0 byla vydána nová stabilní verze 1.26.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.26.

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | Nová verze

    Byla vydána nová verze 6.2 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.14.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Nová verze

    Byla vydána nová verze 30.0.0 frameworku pro vývoj multiplatformních desktopových aplikací pomocí JavaScriptu, HTML a CSS Electron (Wikipedie, GitHub). Chromium bylo aktualizováno na verzi 124.0.6367.49, V8 na verzi 12.4 a Node.js na verzi 20.11.1. Electron byl původně vyvíjen pro editor Atom pod názvem Atom Shell. Dnes je na Electronu postavena celá řada dalších aplikací.

    Ladislav Hagara | Komentářů: 2
    včera 04:11 | Nová verze

    Byla vydána nová verze 9.0.0 otevřeného emulátoru procesorů a virtualizačního nástroje QEMU (Wikipedie). Přispělo 220 vývojářů. Provedeno bylo více než 2 700 commitů. Přehled úprav a nových vlastností v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    23.4. 23:22 | IT novinky

    Evropský parlament dnes přijal směrnici týkající se tzv. práva spotřebitele na opravu. Poslanci ji podpořili 584 hlasy (3 bylo proti a 14 se zdrželo hlasování). Směrnice ujasňuje povinnosti výrobců opravovat zboží a motivovat spotřebitele k tomu, aby si výrobky nechávali opravit a prodloužili tak jejich životnost.

    Ladislav Hagara | Komentářů: 9
    23.4. 16:11 | Nová verze

    Bylo oznámeno (cs) vydání Fedora Linuxu 40. Přehled novinek ve Fedora Workstation 40 a Fedora KDE 40 na stránkách Fedora Magazinu. Současně byl oznámen notebook Slimbook Fedora 2.

    Ladislav Hagara | Komentářů: 24
    23.4. 13:44 | Upozornění

    ČTK (Česká tisková kancelář) upozorňuje (X), že na jejím zpravodajském webu České noviny byly dnes dopoledne neznámým útočníkem umístěny dva smyšlené texty, které nepocházejí z její produkce. Jde o text s titulkem „BIS zabránila pokusu o atentát na nově zvoleného slovenského prezidenta Petra Pelligriniho“ a o údajné mimořádné prohlášení ministra Lipavského k témuž. Tyto dezinformace byly útočníky zveřejněny i s příslušnými notifikacemi v mobilní aplikaci Českých novin. ČTK ve svém zpravodajském servisu žádnou informaci v tomto znění nevydala.

    Ladislav Hagara | Komentářů: 29
    KDE Plasma 6
     (72%)
     (9%)
     (2%)
     (17%)
    Celkem 726 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: PHP - objekty využívají příliš paměti

    14.4.2010 00:33 pphap
    PHP - objekty využívají příliš paměti
    Přečteno: 715×
    Docela mě překvapilo kolik paměti si berou objekty v PHP. Zkoušel jsem vytvořit 10000 objektů z jedné třídy, která v sobě nic neobsahovala a PHP si vzalo skoro 20MB paměti. Připadá mi to docela dost a nechápu proč si to musí tolik paměti brát. Dá se tohle chování nějak ovlivnit?

    Odpovědi

    14.4.2010 13:52 Messa | skóre: 39 | blog: Messa
    Rozbalit Rozbalit vše Re: PHP - objekty využívají příliš paměti
    Jak si to měřil?
    14.4.2010 17:51 pphap
    Rozbalit Rozbalit vše Re: PHP - objekty využívají příliš paměti
    V PHP pomocí memory_get_usage a kontroloval jsem tu hodnotu i tím, že jsem do kódu po vytvoření objektů vložil sleep a zkontroloval to pomocí příkazu free z konzole a je to opravdu tak.
    14.4.2010 19:05 Messa | skóre: 39 | blog: Messa
    Rozbalit Rozbalit vše Re: PHP - objekty využívají příliš paměti
    $ php5 -v
    PHP 5.2.6-1+lenny3 with Suhosin-Patch 0.9.6.2 (cli) (built: Apr 26 2009 20:09:03) 
    Copyright (c) 1997-2008 The PHP Group
    Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
    $ echo '<?php sleep(10); ?>' | php5 & sleep 5; ps aux | grep [p]hp
    [1] 11789
    messa    11789  0.0  0.1 150744  8748 pts/4    S<   18:23   0:00 php5
    $ echo '<?php class C {} for ($i = 0; $i < 10000; $i++) {$arr[] = new c();} sleep(10); ?>' | php5 & sleep 5; ps aux | grep [p]hp
    [2] 11795
    [1]-  Done                    echo '<?php sleep(10); ?>' | php5
    messa    11795  0.4  0.1 156652 14284 pts/4    S<   18:23   0:00 php5
    
    Vzalo si to 5536 kB, to vychází průměrně 567 byte na jeden objekt. Na C++ objekt by to bylo hodně, ale u vzhledem k tomu, že u PHP a podobných jazyků je objekt spíše slovníková struktura a nějaká další režie, mi to nepřijde tolik.

    Pokud potřebuješ vytvářet mraky objektů, možná pro to PHP není to pravé. Nebo by možná stačilo jen zvýšit memory_limit, pokud je i těch 20 MB problém :)
    14.4.2010 17:33 wike | skóre: 19 | blog: experimental
    Rozbalit Rozbalit vše Re: PHP - objekty využívají příliš paměti
    Záleží akú verziu PHP používaš. Verzia 5.3 priniesla garbage collector. Viac si môžeš prečítať v manuálových stránkach PHP.
    14.4.2010 18:09 pphap
    Rozbalit Rozbalit vše Re: PHP - objekty využívají příliš paměti
    Používal jsem 5.2. Teď jsem nahodil 5.3 a nyní to dokonce využije o 0.5MB paměti víc :-) Myslím, že gc je mi k ničemu, když všechny vytvořené objekty používám.
    14.4.2010 19:09 wike | skóre: 19 | blog: experimental
    Rozbalit Rozbalit vše Re: PHP - objekty využívají příliš paměti
    Pravdepodobne záleží od triedy, ktorú testujete. Skúsil som otestovať spotrebu pamäte s použitím triedy Foo z článku v mojom predošlom komentári. Každý objekt obsahuje len jednu premennú s hodnotou "3.1415962654". Do poľa som si ukladal všetky nové objekty a vypísal som spotrebu pamäte pomocou memory_get_usage(). Výstup vyzeral takto:
    Memory usage with 0 objects : 0.31355285644531 MB 
    Memory usage with 5000 objects : 2.108585357666 MB 
    Memory usage with 10000 objects : 3.9348297119141 MB 
    Memory usage with 15000 objects : 5.4797821044922 MB 
    Memory usage with 20000 objects : 7.5872421264648 MB 
    Memory usage with 25000 objects : 9.132194519043 MB 
    Memory usage with 30000 objects : 10.677146911621 MB 
    Memory usage with 35000 objects : 13.347118377686 MB 
    Memory usage with 40000 objects : 14.892070770264 MB 
    Memory usage with 45000 objects : 16.437023162842 MB 
    Memory usage with 50000 objects : 17.98197555542 MB 
    Memory usage with 55000 objects : 19.526927947998 MB 
    Memory usage with 60000 objects : 21.071880340576 MB 
    Memory usage with 65000 objects : 22.616832733154 MB 
    Memory usage with 70000 objects : 26.411785125732 MB 
    Memory usage with 75000 objects : 27.956737518311 MB 
    Memory usage with 80000 objects : 29.501689910889 MB 
    Memory usage with 85000 objects : 31.046642303467 MB 
    Memory usage with 90000 objects : 32.591594696045 MB 
    Memory usage with 95000 objects : 34.136547088623 MB 
    Memory usage with 100000 objects : 35.681499481201 MB 
    
    Memory peak usage : 35.682582855225 MB
    14.4.2010 20:19 wike | skóre: 19 | blog: experimental
    Rozbalit Rozbalit vše Re: PHP - objekty využívají příliš paměti
    Doplním ešte pár informácií :
    $ php -v
    PHP 5.3.2 with Suhosin-Patch (cli) (built: Apr  2 2010 19:44:30) 
    Copyright (c) 1997-2009 The PHP Group
    Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
    
    Obsah suboru test.php
    <?php
    class Foo
    {
        public $var = '3.1415962654';
    }
    
    $arr = array();
    
    for ( $i = 0; $i <= 100000; $i++ )
    {
        $a = new Foo;
        if($a != null){
           $arr[] = $a;
        }
    
        if($i % 5000 == 0){
            echo "Memory usage with $i objects : " . memory_get_usage()/(1024*1024) . " MB \n";
        }
    }
    
    echo "\nMemory peak usage : " . memory_get_peak_usage()/(1024*1024), " MB\n";
    ?>
    

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.