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 03:33 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za červen (YouTube).

    Ladislav Hagara | Komentářů: 0
    dnes 02:33 | Nová verze

    Libreboot (Wikipedie) – svobodný firmware nahrazující proprietární BIOSy, distribuce Corebootu s pravidly pro proprietární bloby – byl vydán ve verzi 25.06 "Luminous Lemon". Přidána byla podpora desek Acer Q45T-AM a Dell Precision T1700 SFF a MT. Současně byl ve verzi 25.06 "Onerous Olive" vydán také Canoeboot, tj. fork Librebootu s ještě přísnějšími pravidly.

    Ladislav Hagara | Komentářů: 0
    dnes 01:33 | Komunita

    Licence GNU GPLv3 o víkendu oslavila 18 let. Oficiálně vyšla 29. června 2007. Při té příležitosti Richard E. Fontana a Bradley M. Kuhn restartovali, oživili a znovu spustili projekt Copyleft-Next s cílem prodiskutovat a navrhnout novou licenci.

    Ladislav Hagara | Komentářů: 0
    včera 16:55 | Nová verze

    Svobodný nemocniční informační systém GNU Health Hospital Information System (HIS) (Wikipedie) byl vydán ve verzi 5.0 (Mastodon).

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

    Open source mapová a navigační aplikace OsmAnd (OpenStreetMap Automated Navigation Directions, Wikipedie, GitHub) oslavila 15 let.

    Ladislav Hagara | Komentářů: 0
    včera 11:55 | Zajímavý software

    Vývojář Spytihněv, autor počítačové hry Hrot (Wikipedie, ProtonDB), pracuje na nové hře Brno Transit. Jedná se o příběhový psychologický horor o strojvedoucím v zácviku, uvězněném v nejzatuchlejším metru východně od všeho, na čem záleží. Vydání je plánováno na čtvrté čtvrtletí letošního roku.

    Ladislav Hagara | Komentářů: 32
    1.7. 18:22 | IT novinky

    V uplynulých dnech byla v depu Českých drah v Brně-Maloměřicích úspěšně dokončena zástavba speciální antény satelitního internetu Starlink od společnosti SpaceX do jednotky InterPanter 660 004 Českých drah. Zástavbu provedla Škoda Group. Cestující se s InterPanterem, vybaveným vysokorychlostním satelitním internetem, setkají například na linkách Svitava Brno – Česká Třebová – Praha nebo Moravan Brno – Břeclav – Přerov – Olomouc.

    Ladislav Hagara | Komentářů: 20
    1.7. 13:11 | Nová verze

    Byla vydána nová verze 8.7.0 správce sbírky fotografií digiKam (Wikipedie). Přehled novinek i s náhledy v oficiálním oznámení (NEWS). Nejnovější digiKam je ke stažení také jako balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo ke spuštění a spustit.

    Ladislav Hagara | Komentářů: 0
    1.7. 12:22 | IT novinky

    Před 30 lety, k 1. 7. 1995, byl v ČR liberalizován Internet - tehdejší Eurotel přišel o svou exkluzivitu a mohli začít vznikat první komerční poskytovatelé přístupu k Internetu [𝕏].

    Ladislav Hagara | Komentářů: 4
    1.7. 11:33 | Nová verze

    Byla vydána (𝕏) nová verze 7.4 open source monitorovacího systému Zabbix (Wikipedie). Přehled novinek v oznámení na webu, v poznámkách k vydání a v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    Jaký je váš oblíbený skriptovací jazyk?
     (59%)
     (28%)
     (6%)
     (2%)
     (0%)
     (1%)
     (3%)
    Celkem 340 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    Rozcestník

    Jednoduchá cache pro R-O-R aplikace

    15.3.2006 17:56 | Přečteno: 1017× | Ruby

    Píšu takovou středně velkou aplikaci v Railsech. Teda backend je R-O-R a frontend je především XUL. Takže různé seznamy tlačím se serveru do Gecka ve formátu RDF, kdy nahrazuji různá ID hodnotami z číselníků.

    Iritovalo mě, jak ActiveRecord na každý záznam v RDF šahá do databáze pro všechny číselníky. Tak jsem napsal následující modul: Acts::SimpleCache, který jednoduše cachuje číselník v hashi v paměti.

    module ActiveRecord
      module Acts
        module SimpleCache
          def self.append_features(base)
            super
            base.extend(ClassMethods)
          end
    
          module ClassMethods
            def acts_as_simple_cache(options = {})
              class_eval do
                after_save { @f_cache = {} }
    
                def self.find(*args)
                  begin
                    if ( (args.length==1) or not args[1].has_key?(:conditions) )
                      logger.debug( "SimpleCache[" + table_name + 
                                    "]::find(" + args[0].to_s + ") - using cache" )
                      @f_cache ||= {}
                      return @f_cache[args[0]] ||= super
                    end
                  rescue => e
                    logger.error( "SimpleCache: exception #{e.class}: #{e.message}" )
                  end
                  super
                end
              end
            end
          end
        end
      end
    end
    
    ActiveRecord::Base.class_eval { include ActiveRecord::Acts::SimpleCache }
    
    

    Použití je takhle snadné:

    class Tvar < ActiveRecord::Base
      has_many :cards
      set_table_name "tvary"
    
      acts_as_simple_cache
    end
    

    Řádek acts_as_simple_cache vložený do definice modelu způsobí, že všechny číselníkové lookupy do tohoto modelu, ktere ActiveRecord generuje půjdou přes cache.

    Zasloužilo by si to učesat, ale jak to je to splňuje účel. Konkrétní akci - generování RDF na různých modelech s počtem číselníků kolem 8-12 jsem zrychlil o 40-60%.

           

    Hodnocení: 67 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    xvasek avatar 15.3.2006 21:51 xvasek | skóre: 21 | blog: | Zlín
    Rozbalit Rozbalit vše Re: Jednoduchá cache pro R-O-R aplikace
    Čím se bavíš, to opravdu zůstává rozum stát. :)

    No je pravda, že WebISu by urychlení prospělo. Při posledním přechodu (kvůli novému mailovému rozhraní) se doba odezvy serveru přibližně zdvojnásobila, ale to jsem přičítal spíš nějaké zapomenuté blbosti nebo špatné konfiguraci a nestálo mi to ani za to, abych napsal mail. Co je pro mě důležitější je odezva na pomalé lince (např. GPRS), kde už je limitujícím faktorem spíš množství dat a WebIS mi přijde, že tady zrovna moc optimalizovaný není. Naproti tomu když má někdo dost rychlou linku, tak si místo 0,25 vteřiny počká 0,5, to se nic neděje.

    Energii bych osobně věnoval v tomto pořadí:

    1) Dokumentový server, verzování dokumentů, fulltextové vyhledávání...

    2) Nějaký CMS (aspoň nástěnka pro administrátora)

    3) Stabilizace samby

    4) Psaní rozhraní, které odbourávají práci roota (obnovení záloh, správa souborů...)

    5) Optimalizace rychlosti

    ...ale to je jenom příspěvek pod blogem, chápu, že hostingové servery s těma prioritama hýbou úplně jinak, než nějaký Stodůlka. :-)
    16.3.2006 08:31 Martin Povolný | blog: Krev na widlich | Brno
    Rozbalit Rozbalit vše Re: Jednoduchá cache pro R-O-R aplikace

    Milej zlatej, se zrychlením pošty po posledním upgrade jseš vedle jak ta jedle.

    Zrychlení je způsobeno tím, ze poštovní rozhraní je kompletně přepsané. Převzaný a upravený PHP kód byl nahrazený nesrovnatelně kvalitnější implementací v RUBY. Tím PHP kompletně vypadlo z konfigurace apache -- jsme nyní úplně PHPfríí (alespoň tam, kde si v tom něco neplácá zákazník).

    Honza šel tak daleko, že optimalizoval IMAPovou knihovnu standardně dodávanou s RUBY -- když zagoogluješ, tak narazíš na moje snahy to tlačit do upstreamu.

    Ad úpravy Cyrusu v posledních dvou blogpostech: ano, projeví se to hlavně na hostingu, ale i všude tam, kde zákazníci přistupují k pošte přes WebIS. Není to tvůj případ?

    Ad čím se bavím -- do toho Ti nic není ;-) Ale vážně, víš, co jsou to hříhy mládí? Ne? Tak věz, že jsem někdy studoval postgraduál na informatice a že jsem se snažil dělat do slovníků. No a jedna nejmenovaná instituce tehdy žádala o grant na tvorbu nového slovníku a jak na sviňu jsem tam byl napsaný jako řešitel....

    Jak to v životě chodí, ve chvíli, kdy jsem to na FI začal balit, tak vyšel ten grant a já se ocitl v situaci, kdy na mém software, kterým bych se už třeba ano moc nechtěl zabývat, běží tvorba slovníku, na které má po dobu 3 let dělat team cca 10 lidí...

    Teď ještě k tvým prioritám:

    1) dokumentový server: ve fázi plánování je ten full-text, další DMS features až později

    2) CMS: v práci mame do WebIS zaintegrováno wiki, ale není to přesně to, co bychom chtěli dávat zákazníkům, probíhají experimenty s wysiwyg editory.

    3) samba - na tom intenzivně pracuju, když si zrovna "nehraju" s XULem , XBL a Railsama ;-)

    4) rozhraní... - ano, v práci je management databází, klíčů do VPN, ve fázi plánování jsou další věci -- management DHCP, přístup k zálohám, ...

    5) optimalizace rychlosti -- věčný problém, běh na dlouhou trať -- viz předchozí 2 blogposty...

    xvasek avatar 16.3.2006 21:40 xvasek | skóre: 21 | blog: | Zlín
    Rozbalit Rozbalit vše Re: Jednoduchá cache pro R-O-R aplikace
    No tak si to čtu a mám z toho pocit, že jsem tě buď naštval (za což se omlouvám), nebo máš blbou náladu. Každopádně pokud to bylo pochopeno tak, že si tady veřejně stěžuju, tak jsem to tak rozhodně nemyslel. Já jsem spokojený uživatel, těším se na každou novinku a nebojím se ani beta-testovat a kdybyste mi dali přístup ke kódu, tak bych občas i něco opravil. Tady ty věci jsem psal jako komentář k blogu z toho důvodu, že se mi nechce otravovat na hotline, protože v poslední době vypadáte, že toho máte fakt hodně. Prostě jsem chtěl, abys tady ty moje "rady" mohl v poklidu ignorovat...
    16.3.2006 22:58 Martin Povolný | blog: Krev na widlich | Brno
    Rozbalit Rozbalit vše Re: Jednoduchá cache pro R-O-R aplikace
    Ne, nenaštval ;-) Ja sám jsem takovej ironickej protivnej rejpal, taky možná trošku agresivněji reaguju, když mám pocit, že někdo rejpá do mě, byť jen v náznaku, prostě jsem takovej protiva.

    Že toho máme troštu víc, to je pravda, přebíráme teď takovou větší záležitost... A druhou stranu, to je život, a je to lepší, než nemít do čeho píchnout.

    Máme teď novýho kolegu -- znáš Jeníka? Tak toho. Pomalu se rozkoukává, ale jak pomine prvotní šok z toho, že má místo v PERLu programovat v RUBY a odsazovat na 4 mezery a zvykne si, že když na něj někdo vrrrrčí (třeba Mára), tak to neznamená nic zlého (ba naopak), zapracuje se, tak potom bude třeba zase volněji...
    16.3.2006 23:01 Martin Povolný | blog: Krev na widlich | Brno
    Rozbalit Rozbalit vše Re: Jednoduchá cache pro R-O-R aplikace
    Každopádně se nemáš za co omlouvat a naopak já děkuji za zájem a promiň, že jsem na tebe na potkání vybafl.
    xvasek avatar 17.3.2006 09:09 xvasek | skóre: 21 | blog: | Zlín
    Rozbalit Rozbalit vše Re: Jednoduchá cache pro R-O-R aplikace
    Jeníka zatím neznám, uvidíme. Jenom pořád nechápu to vaše Ruby. :-)

    Stejně je to sranda. Když ještě frčela jenom válka mezi Perlem a PHP, tak jsem čekal, že i přes počáteční náskok PHP zvítězí nakonec Perl. Postavil jsem se na "správnou" stranu a čekal, co z toho vyleze. No a teď se tak dívám kolem sebe a vidím, že se směje třetí (Python) respektive čtvrtý (Ruby) a Perl nebo PHP? Skoro jsem se už několikrát chtěl podívat na Python, ale nakonec jsem si řekl, že mi Perl vlastně vyhovuje a co používají ostatní je mi celkem jedno.

    Založit nové vláknoNahoru

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