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í
×
    11.7. 16:44 | Komunita

    Dnes v 17:30 bude oficiálně vydána open source počítačová hra DOGWALK vytvořena v 3D softwaru Blender a herním enginu Godot. Release party proběhne na YouTube od 17:00.

    Ladislav Hagara | Komentářů: 3
    11.7. 14:55 | Humor

    McDonald's se spojil se společností Paradox a pracovníky nabírá také pomocí AI řešení s virtuální asistentkou Olivii běžící na webu McHire. Ian Carroll a Sam Curry se na toto AI řešení blíže podívali a opravdu je překvapilo, že se mohli přihlásit pomocí jména 123456 a hesla 123456 a získat přístup k údajům o 64 milionech uchazečů o práci.

    Ladislav Hagara | Komentářů: 10
    11.7. 00:11 | Nová verze

    Byla vydána (𝕏) červnová aktualizace aneb nová verze 1.102 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.102 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    10.7. 21:00 | Bezpečnostní upozornění

    Byla vydána nová verze 2.4.64 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 8 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 4
    10.7. 15:22 | Nová verze

    Společnost xAI na síti 𝕏 představila Grok 4, tj. novou verzi svého AI LLM modelu Grok.

    Ladislav Hagara | Komentářů: 12
    10.7. 12:55 | Bezpečnostní upozornění

    Ministerstvo vnitra odhalilo závažný kyberincident v IT systému resortu. Systém, do kterého se dostal útočník bez oprávnění, byl odpojen a nedošlo k odcizení dat [𝕏].

    Ladislav Hagara | Komentářů: 16
    10.7. 11:55 | Humor

    Před rokem byla streamovací služba HBO Max přejmenována na Max. Dle managementu slovo HBO v názvu nebylo důležité. Včera byl Max přejmenován zpět na HBO Max. Kolik milionů dolarů to stálo? 😂

    Ladislav Hagara | Komentářů: 15
    10.7. 02:11 | Nová verze

    Byla vydána nová major verze 8.0.0 svobodného systému pro detekci a prevenci průniků a monitorování bezpečnosti počítačových sítí Suricata (Wikipedie). Přehled novinek v oficiálním oznámení a v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    10.7. 01:11 | Nová verze

    Mastodon (Wikipedie) - sociální síť, která není na prodej - byl vydán ve verzi 4.4. Přehled novinek s náhledy a videi v oznámení na blogu.

    Ladislav Hagara | Komentářů: 1
    10.7. 00:11 | IT novinky

    Instituce státní správy nebudou smět využívat produkty, aplikace, řešení, webové stránky a webové služby poskytované čínskou společností DeepSeek. Na doporučení Národního úřadu pro kybernetickou a informační bezpečnost rozhodla o jejich zákazu vláda Petra Fialy na jednání ve středu 9. července 2025.

    Ladislav Hagara | Komentářů: 8
    Jaký je váš oblíbený skriptovací jazyk?
     (59%)
     (27%)
     (7%)
     (3%)
     (1%)
     (1%)
     (4%)
    Celkem 389 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    Rozcestník
    Štítky: není přiřazen žádný štítek


    Vložit další komentář
    pavlix avatar 8.12.2013 09:43 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Non blocking IO vs kooperatívny multitasking na webe
    Ověřoval jsi vůbec, zda gevent používá blokující IO, abys mohl tvrdit, že je lepší používat gevent než neblokující IO?

    Tvrzení, že neblokující IO kód znepřehledňuje je pitomost. Dobře udělané Pythoní API musí být schopné jakýkoli boilerplate kód schovat.

    Ovšem hlavní smysl neblokujícího IO je paradoxně blokování. Přesněji řečeno blokování na celé řadě souborových deskriptorů namísto blokování samotných operací nad deskriptory.

    Alternativou k neblokujícímu IO je pro každou takovou akci založit nové vlákno či proces. Jestliže se používá nějaký interní multitasking, bez kernelových vláken, tak musí daný framework zabránit kernelu, aby kvůli jednomu pseudovláknu zablokoval celé pythoní vlákno se všemi pseudovlákny. K tomu se používá neblokující IO.

    Nepleť si pojmy s dojmy a zkus si uvědomit, že neblokující IO je to, na čem obě srovnávané varianty stojí.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    mirec avatar 8.12.2013 10:04 mirec | skóre: 32 | blog: mirecove_dristy | Poprad
    Rozbalit Rozbalit vše Re: Non blocking IO vs kooperatívny multitasking na webe

    V mojom príklade memcache používa skutočne blokujúce sockety (nepoužíl som gevent.monkey.patch_socket).

    Pojem non blocking io sa používa hlavne v súvislosti s node.js ale je to prakticky to isté, čo som ukázal v python kóde (to je ekvivalentné s kooperatívnym multitaskingom kde sa pri volaní i/o prepne úloha a obnoví sa znovu až keď budú buffery patrične naplnené). Rozdiel je len v tom, že v pythone sa to isté dá zapísať bez callbackov.

    Cieľom blogu bolo ukázať, že to, čo je dnes akože novinka tu bolo dávno pred tým, len sa to volalo trochu inak.

    Prepínanie úlohy pri I/O sa dá dosiahnuť rôznymi spôsobmi - systémové vlákna, nejaké pseudovlákna v interpretovanom jazyku, alebo eventmi riadený loop s callbackmi ako v node.js. Rozdiel je len v spôsobe zápisu (ktorý je v prípade node.js podstatne zložitejší).

    Samozreme teraz nehovorím, že rýchlo prepíšme všetko do pythonu pretože tam oproti node.js nie sú knižnice na neblokujúce volania pripravené. Príkladom môže byť napr. memcache, ktorý by pri nahradení socketu neblokujúcimi socketmi spôsobil odpojenie od memcached servera. Súčasné riešenie ktoré som ukázal pracuje s memcache korektne tj. požiadavka, odpoveď, požiadavka, odpoveď na tom istom sockete. Ak by som povolil prerušenie dvojíc požiadavka - odpoveď dostal by som na tom istom sockete požiadavka, požiadavka ... chyba. Tu je potrebné teda použiť špeciálnu memcache knižnicu, ktorá obaľuje dvojice do synchronizačných primitív a aby to celé nefungovalo ako úzke hrdlo treba vytvoriť niekoľko spojení a používať connection poll.

    LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon
    pavlix avatar 9.12.2013 07:34 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Non blocking IO vs kooperatívny multitasking na webe
    Pojem non blocking io sa používa hlavne v súvislosti s node.js
    Ten pojem se používal v době, kdy o node.js ještě nikdo neslyšel.

    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    mirec avatar 9.12.2013 07:48 mirec | skóre: 32 | blog: mirecove_dristy | Poprad
    Rozbalit Rozbalit vše Re: Non blocking IO vs kooperatívny multitasking na webe

    Áno, akurát v poslednej dobe sa z toho stal taký buzzword. Ako som písal všetko tu už bolo dávno, neblokujúce IO sa riešili väčšinou vláknami a to že v nodejs funguje tak, že IO operácie okamžite vracajú undefined a vrtátená hodnota IO sa podstrčí callbacku je len obídenie obmedzení nodejs, žiadna zázračná technológia. To isté som ukázal v inom jazyku (konkrétne python, ale kľudne som mohol použiť čokoľvek iné, čo pozná vlákna) ale s jednoduchším a kratším kódom (vďaka tomu, že sa nemusia používať callbacky). Takže podčiarknuté a sčítané - node.js sa oplatí jedine vďaka knižniciam, ale samotný komfort pri písaní a čitateľnosť kódu tu netreba hľadať.

    LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon
    pavlix avatar 9.12.2013 08:34 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Non blocking IO vs kooperatívny multitasking na webe
    Áno, akurát v poslednej dobe sa z toho stal taký buzzword.
    Buzzwordy si nech pro personalistky a management.
    Ako som písal všetko tu už bolo dávno, neblokujúce IO sa riešili väčšinou vláknami
    Vzhledem k tomu, že neblokující IO, tak jak je známý z POSIXových a podobných systémů, je v podstatě jedinou možností, jak se vláknům (či procesům) vyhnout, zní mi tato věta dost komicky. Jediné, co ti můžu doporučit je přestat se snažit o vysvětlení a něco si o tom přečíst. Třeba na anglickou wikipedii ta tvoje buzzwordová verze ještě nedošla.

    Já jsem srozuměn s tím, že za „neblokující“ se dá označit ledacos včetně toho vláknování, ale pod „neblokujícím IO“ si představuju neblokující vstupní a výstupní operace. A to jsou kupodivu IO operace, které neblokují proces (vlákno), které je spustilo. Alternativou k tomu je spuštění blokující operace v samostatném vlákně.

    Jenže to musí být skutečné vlákno operačního systému, jinak nelze vůbec samostatně ze strany OS zablokovat. Takže pokud se jedná o nějaká kooperativní falešná vlákna na úrovni bajtkódových instrukcí (tak jsem to ze zápisku pochopil), tak za tím bude mezivrstva, která používá právě neblokující IO operace.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    mirec avatar 9.12.2013 11:24 mirec | skóre: 32 | blog: mirecove_dristy | Poprad
    Rozbalit Rozbalit vše Re: Non blocking IO vs kooperatívny multitasking na webe

    V prípade pythonu je to skutočne kooperatívny multitasking a na asynchrónne operácie sa používa knižnica libev (v tomto konkrétnom prípade, neplatí všeobecne).

    LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon
    pavlix avatar 9.12.2013 13:26 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Non blocking IO vs kooperatívny multitasking na webe
    To zní jako rozumné řešení, libev je jedna z knihoven na event loop pro neblokující IO.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    9.12.2013 09:07 Mike
    Rozbalit Rozbalit vše Re: Non blocking IO vs kooperatívny multitasking na webe
    Ano, také nechápu proč někdo používá node.js a píše v prasáckém Javascriptu, když jsou tu mnohem lepší nástroje např. právě v podobě Pythonu + gevent.

    Podle mě jsou to přeučení webaři zvyklí v Javascriptu prasit client-side, co nic jiného než JS pořádně neumí, tak se ho drží zuby nehty i na straně serveru. A nebo obzvláště zvrácení masochisti, jiné vysvětlení nemám.
    9.12.2013 16:29 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Non blocking IO vs kooperatívny multitasking na webe
    > [1, 2, 3, 10].sort()
    [1, 10, 2, 3]
    
    Tohle jinde nenajdeš ;-).
    When your hammer is C++, everything begins to look like a thumb.
    10.12.2013 16:37 Kozzi
    Rozbalit Rozbalit vše Re: Non blocking IO vs kooperatívny multitasking na webe
    Tak ono to jde pomoci asynchroniho I/O a nemusi to vypadat zle):
    import vibe.d;
    import memcache;
    
    shared static this() {
        auto memcache = new Memcache("127.0.0.1:11211");
        memcache.set("msg_var", "vyrok_2013-07-12");
        memcache.set("vyrok_2013-07-12", "vyrok pre dnesok");
    
        auto settings = new HTTPServerSettings;
        settings.bindAddresses = ["::1", "127.0.0.1"];
        settings.port = 8080;
        listenHTTP(settings, (HTTPServerRequest req, HTTPServerResponse res) {
            auto msg_var = memcache.get("msg_var");
            auto msg = memcache.get(msg_var);
            res.writeBody(msg, "text/plain");
        });
    }
    
    BTW. je to skoro 2x rychlejsi nez node.js

    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.