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í
×
    dnes 17:11 | Nová verze

    Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.

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

    Vyšlo Pharo 12.0, programovací jazyk a vývojové prostředí s řadou pokročilých vlastností. Krom tradiční nadílky oprav přináší nový systém správy ladících bodů, nový způsob definice tříd, prostor pro objekty, které nemusí procházet GC a mnoho dalšího.

    Pavel Křivánek | Komentářů: 2
    dnes 04:55 | Zajímavý software

    Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.

    Ladislav Hagara | Komentářů: 22
    včera 17:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.

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

    Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.

    Ladislav Hagara | Komentářů: 2
    včera 13:22 | Nová verze

    Fossil (Wikipedie) byl vydán ve verzi 2.24. Jedná se o distribuovaný systém správy verzí propojený se správou chyb, wiki stránek a blogů s integrovaným webovým rozhraním. Vše běží z jednoho jediného spustitelného souboru a uloženo je v SQLite databázi.

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

    Byla vydána nová stabilní verze 6.7 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 124. Přehled novinek i s náhledy v příspěvku na blogu. Vypíchnout lze Spořič paměti (Memory Saver) automaticky hibernující karty, které nebyly nějakou dobu používány nebo vylepšené Odběry (Feed Reader).

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

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

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

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

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

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (73%)
     (9%)
     (2%)
     (16%)
    Celkem 793 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: je LAMP / PHP single thread?

    13.10.2019 22:38 marky
    je LAMP / PHP single thread?
    Přečteno: 413×
    Mám jedno CMS v PHP články formátujem cez markdown hľadal som nejaký šikovný konvertor pre PHP takže som vybral tento https://parsedown.org/ akurát mi v ňom nefungovali veci nad rámec štandardu markdown napríklad pridávanie CSS classov na elementy cez {.nejakatrieda}. Vyhodil som ho teda. A upravil som jednu aplikáciu ktorá obsahuje jeden vymakaný (nephpčkový) markdown parser MarkDig. Ten má kopu rozšírení, pridal som teda do appky nový controller MarkdownController a akciu ToHtml takže teraz ten markdown parser pouzivam z PHP aplikácie cez restové api.

    POST /markdown/to-html pošlem mu postom string v markdowne a dostanem json obsahujúci html.

    Lenže to má jednu drobnú nevýhodu: Pristupujem z jednej domény na inú. Celý preklad z MD do HTML trvá nejaky kratky cas mozno 500 ms. lenže na tých pol sekundy vlastne zamrzne celé PHP možno dokonca aj celý apache. Keď som mal otovrený debugger tej aplikácie (ktorá poskytovala to REST api) a dal som si breakpoint na miesto kde sa prekladá markdown do HTML a začal som ju krokovať tak spolu s ňou zamzla aj tá PHP aplikácia ktorá očakávala response z rest api.

    Neviem presne technické detaily ako funguje PHP (cakal som ine spravanie), ale mám dojem že PHP beží na len jednom vlákne. A a kým mi ne-php REST api nevráti response tak vlastne neni k dispozízii cela stranka? Správne to chápem? Takže asi by bolo dobré aby to neblokovalo hlavné vlákno. Keby som nebol v PHP tak by som to hodil buď na nové vlákno alebo spustil ako task, thread, TPL, thread pool, alebo pouzil backgroundworker alebo niečo podobnbé ale podporuje také niečo aj PHP? A rovnako aj posielanie emailov by malo prestat blokovat hlavne vlakno

    Odpovědi

    13.10.2019 23:26 M. Ponkrác | skóre: 3
    Rozbalit Rozbalit vše Re: je LAMP / PHP single thread?
    Nevím jak je to dnes, ale před řadou let fungoval Apache tak, že spustil houf procesů nebo threadů. A v tomto poolu pak honil HTTP requesty.

    Pár HTTP requestů tedy nemohlo zablokovat ani Apache, ani PHP, protože paralelně jich mohlo běžet větší množství.

    Jinak ano, PHP je single-thread. Ale protože je většinou spuštěn x-krát v poolu, tak jeden request by to neměl mít možnost zablokovat.

    Onlouvám se, pokud jsou mé informace již zastaralé, a dnes už se to dělá jinak. Už to pár let nesleduji jak se to vyvíjí.
    14.10.2019 00:23 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: je LAMP / PHP single thread?
    PHP běží jednovláknově, ale Apache vytvoří pro každý HTTP požadavek nové vlákno (resp. si ho vezme z poolu) a v každém z nich může běžet jiné PHP. K blokování tedy nedochází.

    PHP samo umí fungovat jako jednovláknový HTTP server, u kterého by k takovému problému mohlo dojít. Proto se používá jen pro testovací účely.

    BTW: 500 ms na zpracování Markdownu je hodne. To je v tom celá kniha?
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    14.10.2019 06:00 Matlák
    Rozbalit Rozbalit vše Re: je LAMP / PHP single thread?
    Keď som mal otovrený debugger tej aplikácie (ktorá poskytovala to REST api) a dal som si breakpoint na miesto kde sa prekladá markdown do HTML a začal som ju krokovať tak spolu s ňou zamzla aj tá PHP aplikácia ktorá očakávala response z rest api.

    Nevím jestli to chápu dostatečně ale tohle mi přijde logické - protože krokuješ překlad jehož výsledek pak vracíš, nemůžeš čekat že ta aplikace která response čeká ho nějakým zázrakem dostane s předstihem dřív, než ten překlad odkrokuješ nebo pustíš. To je tuším něco jako kauzalita.

    Pokud bys to pustil asynchronně (a že je to v PHP podporované velmi mizerně) tak bys a) musel stejně čekat než se ten proces dokončí abys mohl ukončit skript a vrátit výsledek a nebo b) bys výsledek zahodil a tvé REST API by nevrátilo nic.

    p.s. pomiňme teď fakt že vracet z REST služby HTML zabalené v JSON je oescapovaný hnus a že používat PHP v PHP přes REST je ještě větší hnus

    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.