abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 00:44 | Nová verze

    Byla vydána nová verze 3.22.0 grafického vývojového prostředí a platformy Gambas (Wikipedie) založené na interpretru programovacího jazyka Basic s rozšířením o objektově orientované programování. Přehled novinek v poznámkách k vydání. Zdrojové kódy jsou k dispozici na GitLabu.

    Ladislav Hagara | Komentářů: 0
    včera 20:22 | Komunita

    FreeBSD odstranilo poslední GPL kód ze základního systému. Konkrétně dpv, libdpv, libfigpar a dialog. Instalátor před čtyřmi lety přešel z dialogu na bsddialog.

    Ladislav Hagara | Komentářů: 2
    včera 15:22 | IT novinky

    Sociální síti 𝕏 (dříve Twitter) má dnes 20 let. Pro veřejnost byla zpřístupněna 15. července 2006.

    Ladislav Hagara | Komentářů: 1
    včera 14:22 | Zajímavý software

    Insula Faktury je open source generátor faktur, který běží přímo ve webovém prohlížeči. Žádná registrace, žádné sledování, žádné omezení. Zdrojové kódy jsou k dispozici na Codebergu.

    Ladislav Hagara | Komentářů: 7
    včera 13:22 | Komunita

    První Mobile Linux Hackday v Plzni, tj. komunitní setkání věnované Linuxu na mobilních zařízeních, proběhne 24. července od 10:00. Akce je otevřená všem zájemcům – od zvědavců po zkušené vývojáře. Dopoledne proběhnou přednášky Davida Heidelberga a Petra Hodiny o aktuálním stavu mobilního Linuxu: proč vůbec chtít tučňáka v kapse, jaké telefony jsou dnes dobře podporované a co taková podpora obnáší. Po obědě se zaměříme na konkrétní

    … více »
    Ladislav Hagara | Komentářů: 0
    14.7. 19:33 | Nová verze

    3D software Blender byl vydán ve verzi 5.2 s prodlouženou podporou. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 0
    14.7. 16:55 | Zajímavý software

    SketchForge 3D (GitHub, reddit) je open source 3D editor / CAD běžící ve webovém prohlížeči bez nutnosti účtu nebo cloudového úložiště. Inspirovaný byl Tinkercadem. Doporučena je lokální instalace.

    Ladislav Hagara | Komentářů: 0
    14.7. 12:44 | Nová verze

    Byla vydána nová verze 11.9 webového prohlížeče Midori (Wikipedie, GitHub). S novým centrem ovládání, pokročilejším blokováním reklam, optimalizací výkonu…

    Ladislav Hagara | Komentářů: 1
    14.7. 04:22 | Zajímavý projekt

    Na Crowd Supply běží kampaň na podporu open source čtečky elektronických knih Open Book Touch. Postavena je na ESP32-S3. Má 4,26palcový dotykový e-papírový displej s rozlišením 480×800 pixelů, podsvícení, slot na microSD kartu. Cena je 149 dolarů a poštovné 12 dolarů. Dodání je plánováno na duben 2027.

    Ladislav Hagara | Komentářů: 9
    13.7. 18:00 | IT novinky

    Na Humble Bundle běží akce Linux: All the Things by O'Reilly a Picos, HATs, and More by Raspberry Pi Press. Elektronické knihy lze koupit se slevou a současně podpořit organizace Code for America a Raspberry Pi Foundation.

    Ladislav Hagara | Komentářů: 5
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (7%)
     (2%)
     (17%)
     (31%)
     (4%)
     (6%)
     (2%)
     (15%)
     (25%)
    Celkem 2131 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Java logging performance

    17.1.2013 15:37 | Přečteno: 1174×

    Nazov blogu znie honosne, ale zaujimalo ma, aky dopad na vykon maju rozne scenare pouzitia loggeru.

    Na testy som pouzil oracle java 1.7 64bit, slf4j + logback, meranie prebehlo vzdy 3x na nezatazenom kompe. Je to sice primitivne, ale hrat sa s profilerom nemam cas. Vysledky si sem ukladam pre buducu argumentaciu, ale mozu sa takisto hodit niekomu dalsiemu a usetrim mu tak 10 minut prace.

     

    Kod na ktorom som testoval:

    private static final Logger logger = LoggerFactory.getLogger(App.class);
        private static final boolean loggerInfoEnabled = logger.isInfoEnabled();
    
        public static void main(String[] args) {
    
            long t1 = System.currentTimeMillis();
            long x=0;
            for(long l = 0; l < 1000000000;l++ ) {
    
                // 1
                logger.info("A {}", l);
    
                // 2
                if ( logger.isInfoEnabled()) {
                    logger.info("A {}",l);
                }
    
    
                // 3
                if ( loggerInfoEnabled ) {
                    logger.info("A {}",l);
                }
    
                x++;
            }
    
            long t2 = System.currentTimeMillis();
            System.out.println(t2-t1);
    
        }
    

    Komentarmi 1,2 a 3 su oznacene bloky kodu, ktore som mal za/odkomentovane. Vzdy sa vykonaval len jeden zo scenarov. Scenar 0 je s uplne zakomentovanym kodom loggeru a vykonava sa len x++;

     

    Vysledky:

     

     

     

    0 - 2034, 2307, 2306
    1 - 20192, 20395, 20625
    2 - 8905, 8930, 8941
    3 - 2306, 2301, 2309

     

    Vysledok je teda jasny, pokial pracujem v casovo narocnom prostredi, ale chcem mat moznost logovat, pouzijem variantu 3. Nevyhoda je jasna - nebude mi fungovat reloading konfiguracie loggerov za behu aplikacie.

           

    Hodnocení: 100 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    Člověk z Horní Dolní avatar 17.1.2013 17:07 Člověk z Horní Dolní | blog: blbeczhornidolni
    Rozbalit Rozbalit vše Re: Java logging performance
    Cili overhead je naprosto zanedbatelny.
    Člověk z Horní Dolní avatar 17.1.2013 17:09 Člověk z Horní Dolní | blog: blbeczhornidolni
    Rozbalit Rozbalit vše Re: Java logging performance
    17.1.2013 17:17 Franta
    Rozbalit Rozbalit vše Re: Java logging performance
    Vysledok je teda jasny, pokial pracujem v casovo narocnom prostredi, ale chcem mat moznost logovat, pouzijem variantu 3.
    To mi až tak jasné nepřijde. Protože za 2,0192 ms stihneš zalogovat 100 000 zpráv, to není málo :-) I při variantě #1 jich zaloguješ 10 000, což je stále dost velká rychlost.

    Klíčové je hlavně to, dát tam ten IF (klidně s logger.isInfoEnabled()), pokud do logovacích hlášek dáváme parametry, jejichž získání/vypočtení trvá dlouho.
    19.1.2013 10:37 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: Java logging performance
    Ja teda neviem ale ... mne to pripadá ani nie tak o rýchlosti logovania ako o rýchlosti -
    1. volania funkcie + odovzdanie parametrov ... tou funkciou je .info(...)
    2. volania funkcie ... tou funkciou je .isInfoEnabled()
    3. prečítanie hodnoty premennej
    Optimazizácia kúzelného kompilátora by 2. zredukovala na 3., ale ja by som jednoducho aj bez empirického testovania a bez ohľadu na jazyk vsadil na 3.
    msk avatar 25.1.2013 11:42 msk | skóre: 27 | blog: msk
    Rozbalit Rozbalit vše Re: Java logging performance
    Je to tak, blbo som sa vyjadril. Ten logger samozrejme neloguje ( je nastaveny vyzsi level ), slo mi o to zistit, aky je rozdiel vo volani loggera roznymi sposobmi ( a aky to ma dopad na vykon v pripade, ked nelogujem ).

    Založit nové vláknoNahoru

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