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í
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
včera 16:24 | Nová verze

Byla vydána Mageia 5.1. Jedná se o první opravné vydání verze 5, jež vyšla v červnu loňského roku (zprávička). Uživatelům verze 5 nepřináší opravné vydání nic nového, samozřejmě pokud pravidelně aktualizují. Vydání obsahuje všechny aktualizace za posledního téměř půldruhého roku. Mageia 5.1 obsahuje LibreOffice 4.4.7, Linux 4.4.32, KDE4 4.14.5 nebo GNOME 3.14.3.

Ladislav Hagara | Komentářů: 0
včera 13:42 | Pozvánky

V Praze probíhá konference Internet a Technologie 16.2, volné pokračování jarní konference sdružení CZ.NIC. Konferenci lze sledovat online na YouTube. K dispozici je také archiv předchozích konferencí.

Ladislav Hagara | Komentářů: 0
2.12. 22:44 | Komunita

Joinup informuje, že Mnichov používá open source groupware Kolab. V srpnu byl dokončen dvouletý přechod na toto řešení. V provozu je asi 60 000 poštovních schránek. Nejenom Kolabu se věnoval Georg Greve ve své přednášce Open Source: the future for the European institutions (SlideShare) na konferenci DIGITEC 2016, jež proběhla v úterý 29. listopadu v Bruselu. Videozáznam přednášek z hlavního sálu je ke zhlédnutí na Livestreamu.

Ladislav Hagara | Komentářů: 16
2.12. 15:30 | Zajímavý projekt

Společnost Jolla oznámila v příspěvku Case study: Sailfish Watch na svém blogu, že naportovala Sailfish OS na chytré hodinky. Využila a inspirovala se otevřeným operačním systémem pro chytré hodinky AsteroidOS. Použita je knihovna libhybris. Ukázka ovládání hodinek na YouTube.

Ladislav Hagara | Komentářů: 8
2.12. 14:15 | Nová verze

Byla vydána verze 7.1.0 skriptovacího jazyka PHP používaného zejména k vývoji dynamických webových stránek. Jedná se o první stabilní verzi nejnovější větvě 7.1. Přehled novinek v dokumentaci. Podrobnosti v ChangeLogu. K dispozici je také příručka pro přechod z PHP 7.0.x na PHP 7.1.x.

Ladislav Hagara | Komentářů: 2
2.12. 12:55 | Nová verze

Google Chrome 55 byl prohlášen za stabilní. Nejnovější stabilní verze 55.0.2883.75 tohoto webového prohlížeče přináší řadu oprav a vylepšení (YouTube). Opraveno bylo také 36 bezpečnostních chyb. Mariusz Mlynski si například vydělal 22 500 dolarů za 3 nahlášené chyby (Universal XSS in Blink).

Ladislav Hagara | Komentářů: 4
2.12. 11:55 | Pozvánky

Máte rádi svobodný software a hardware nebo se o nich chcete něco dozvědět? Přijďte na 135. sraz spolku OpenAlt, který se bude konat ve čtvrtek 8. prosince od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Sraz bude tentokrát tématický. Bude retro! K vidění budou přístroje jako Psion 5mx nebo Palm Z22. Ze svobodného hardwaru pak Openmoko nebo čtečka WikiReader. Přijďte se i vy pochlubit svými legendami, nebo alespoň na pivo. Moderní hardware má vstup samozřejmě také povolen.

xkucf03 | Komentářů: 0
2.12. 00:10 | Nová verze

Byla vydána verze 3.2 svobodného systému pro detekci a prevenci průniků a monitorování bezpečnosti počítačových sítí Suricata. Z novinek lze zmínit například podporu protokolů DNP3 a CIP/ENIP, vylepšenou podporu TLS a samozřejmě také aktualizovanou dokumentaci.

Ladislav Hagara | Komentářů: 0
1.12. 21:00 | Nová verze

Byla vydána beta verze Linux Mintu 18.1 s kódovým jménem Serena. Na blogu Linux Mintu jsou hned dvě oznámení. První o vydání Linux Mintu s prostředím MATE a druhé o vydání Linux Mintu s prostředím Cinnamon. Stejným způsobem jsou rozděleny také poznámky k vydání (MATE, Cinnamon) a přehled novinek s náhledy (MATE, Cinnamon). Linux Mint 18.1 bude podporován až do roku 2021.

Ladislav Hagara | Komentářů: 0
1.12. 16:42 | Nová verze

Byl vydán Devuan Jessie 1.0 Beta 2. Jedná se o druhou beta verzi forku Debianu bez systemd představeného v listopadu 2014 (zprávička). První beta verze byla vydána v dubnu letošního roku (zprávička). Jedna z posledních přednášek věnovaných Devuanu proběhla v listopadu na konferenci FSCONS 2016 (YouTube, pdf).

Ladislav Hagara | Komentářů: 0
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (24%)
 (29%)
 (7%)
 (5%)
 (3%)
Celkem 767 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

Dotaz: Jak zjistím v PHP počet SQL dotazů

24.7.2013 11:42 Juraj
Jak zjistím v PHP počet SQL dotazů
Přečteno: 668×
Ahoj, našel jsem zde v patičce údaj který vypadá nějak takto

Doba zpracování: 0.03117 | SQL dotazů: 5 | Uživatelé: 56

Jak můžu i já zjistit takový počet SQL dotazu do MySQL databáze v PHP, poradí někdo? Díky

Řešení dotazu:


Odpovědi

24.7.2013 13:09 Kit
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
Do objektu, který posílá dotazy do databáze, přidáš čítač.
26.7.2013 12:39 hyperventil
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
což předpokládá, že takový objekt existuje a je použit pro všechny dotazy. možná by bylo dobré zvážit použití nějakého profesionálního profiling nástroje, např. xhprof.
26.7.2013 12:48 Kit
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
Dnes už se to přece jinak než přes objekt nedělá. Potřebuji přece k SQL dotazu přidat data, které standardnímu ovladači musím dodat zvlášť. Také musím nějak tu databázi otevřít a přitom ji chci otevřít až když ji skutečně potřebuji.

Do takového objektu prostě doplním jeden čítač a jeden getter k němu. Hotovo.
26.7.2013 15:47 Kit
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
Databázový dotaz nelze položit jinak než přes ten objekt, protože deskriptor k té databázi nikdo jiný nemá a objekt ho neposkytuje.
26.7.2013 15:31 Mr.S1lent.cz
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
Pri vyvoji rozhodne pouzivej frameworky. V soucasne dobe muzu doporucit bezkonkurencni Nette. Nativne ma info debug bar, kde mas zakladni debug data, vcetne pametove narocnosti a souhrn vsech sql dotazu pri pouziti integrovane databazove vrstvy Nette\Database.
26.7.2013 15:37 Kit
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
Rozhodně bych odstranil to slovo "rozhodně". Frameworky nejsou samospasitelné a občas vedou do pekel.
26.7.2013 15:43 Mr.S1lent.cz
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
Bez frameworku neni programovani efektivni. Kazdy language jde nejakym zpusobem injectnout, kdyz se dostanes do uzkych... Je to sice praseni, ale tomu se vetsinou nevyhnes. Kazdopadne kdyz pouzivas nastroj, ktery pouziva a vylepsuje velka komunita lidi, je mnohem mensi sance, ze se dostanes do uzkych a ze se nekde zamotas ci zaseknes. Zadna volba neni 100%, ale je to cesta nejmensiho odporu. Velka efektivita a pripadna okamzita pomoc na chatech/forech komunity dela ze vsech framworku pro vsechny jazyky a typy aplikaci jasnou volbu.
26.7.2013 15:53 Kit
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
Zrovna u databáze si místo košatého frameworku raději udělám vlastní 100-200 řádkový model, který umí perfektně vše, co aplikace potřebuje a nic zbytečného navíc.

O efektivitě frameworků bychom mohli dlouho diskutovat, ale uznávám, že v dnešní době není nutné na efektivitu brát zřetel. Frameworky jsou prostě pomalejší, ale dnes už to tolik nevadí.
29.7.2013 15:56 Mr.S1lent.cz
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
No tak muzes samozrejme vsechno psat rucne, ale vyvoj a prehlednost - nasledny debug je nekolikrat casove narocnejsi a kdo ti zaplati tu o 20ms mensi rezii frameworku, opravu velkeho mnozstvi logickych chyb u velkych aplikaci, kdyz hrdlo db je nekolikrat vetsi, nez tech 20ms? Nikdo.. :) O znovupouzitelnosti kodu v nejakem tymu programatoru bez znalosti tveho nastroje ci API ani nemluve...

Jinak jsem videl i weby svistet kolikrat rychleji na frameworcich, nez od nejakeho bastlire v citem phpku. Zalezi to na tom, jak umi aplikaci optimalizovat.

A jestlize chce clovek hledet na vykon, pak co se tyce rychlosti vyvoje, tak at se treba mrvi s C++ webtools, kdyz je tak chorobne zavisly na kazde ms, kterou mu stejne, jak jsem psal, zhati databaze...
29.7.2013 16:25 Kit
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
PHP je samo sobě frameworkem. Stačí jen znát jeho vestavěné funkce a cizí frameworky se stanou zbytečnými. Zrovna vazba OOP na databázi je v PHP vyřešena velmi elegantně. Podobně zbytečným je například Smarty, protože v čistém PHP vypadají šablony mnohem přehledněji.

Jde mi hlavně o úsporu času při vývoji. Proto cizí frameworky téměř nepoužívám.
30.7.2013 09:07 Mr.S1lent.cz
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
Asi nevyvijis v praxi v tymu nebo na vetsich projektech, jinak bys tohle nemohl tvrdit. Na mensi ci nekomerncni projekty inu proc ne, ale na neco vetsiho, to by bylo docela "wtf" :)
30.7.2013 09:18 Kit
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
Nemohu za to, že ten tvůj tým nezná PHP a místo elegantních řešení dodávaných s jazykem používají cizí frameworky jenom proto, že někde slyšeli o jejich kvalitě.
30.7.2013 09:32 Mr.S1lent.cz
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
Proc bych mel vyvijet kolo, kdyz uz dost kvalitni kolo existuje, overene tisici programatory? Tam je vetsi nadeje nejakeho odlazeni a odbugovani nez u nastroje, ktery bych si zbytecne vyvijel a ladil sam. Neznalosti bych se neohanel, to je zaklad a prepisovat kod frameworku tak, aby byl efektivni a bezpecny jenom proto, ze jsem se zarekl, ze nebudu pouzivat cizi framework, mi proste prijde nestastne, nez abych ho proste a jednoduse pouzil. A myslim, ze ne jenom me, ale i 99% prosperujicih sw firem.

Jinak kdyby bylo PHP samospasne, nesnazili by se sami autori o nejaky svuj akademicky zend framework, neni-liz pravda a kdyz sam autor pro svuj jazyk vyvine framework, to uz je prece jen nejaky impulz pro to, ze psat tuny kodu neprijde normalni ani klukum ze zendu :)))
30.7.2013 09:43 Kit
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
Tys to nepochopil. Napsat kus kódu v čistém PHP je dnes jednodušší, než ten samý kus kódu psát v nějakém frameworku. Autoři PHP totiž ty frameworky vložili přímo do jazyka.

Podle mne kolo vynalézají spíš autoři frameworků. Vše potřebné už v PHP je.
30.7.2013 16:41 Mr.S1lent.cz
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
To jakoze naprosto vubec, to zijes asi v uplnem jinem vesmiru. Jak resis hezke routovani, generovani formularu, life time aplikace, posilani signalu? Vsechno velkym kusem kodu, na ktery mi staci jen vytvorit instanci s parametry. Jak v aplikaci resis Dependency Injection design pattern? Takhle bych mohl pokracovat do zitrka...

Bud mi odpovis, ze to neresis a delas vse slozite manualne, anebo ze na to mas svuj vlastni nastroj, ktery neustale rozsirujes, protoze potrebujes vzdy neco noveho a za 10 let skoncis na nejakem bastlu se stejnou funkcnosti, jako u radou programatoru vylazenem frameworku...

Kdyz jsem zacinal v PHP, tak jsem byl nadseny do toho, si psat ruzne pomocne funkce, ktere by mi usnadnily a urychlily vyvoj a porad jsem je zdokonaloval, upravoval a rozsiroval, pak jsem si uvedomil, ze uz existuji plne sofistikovane nastroje a ze vymyslim kolo, tak jsem tento fakt prijmul a zacal tyto nastroje pouzivat.

A je uplne jedno, jeslti vyvijim v PHP, pythonu, ci C++, vsude jsou dostupne frameworky, ktere jen a jen ulehcuji praci a nic jineho. Pokud ti 10 - 20ms rezie lezi v zaludku z duvodu, ze se ti nechce studovat dokumentanci, pak je to tvuj boj, ale neodsuzuj frameworky jako takove, bez kterych by snad zadna aplikace nemohla fungovat, protoze by jeji vyvoj byl priserne drahy.
30.7.2013 16:57 Kit
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
Jak resis hezke routovani, generovani formularu, life time aplikace, posilani signalu? Vsechno velkym kusem kodu, na ktery mi staci jen vytvorit instanci s parametry. Jak v aplikaci resis Dependency Injection design pattern?
To všechno umí PHP i bez frameworků. Stačí si jen přečíst dokumentaci PHP a použít nástroje, které už vymyslel někdo přede mnou. Nemusím přece vynalézat kolo.
30.7.2013 17:01 Mr.S1lent.cz
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
Ja PHP znam moc dobre, i do hloubky, protoze jsem pro nej psal nejake extensiony a vyvijel jsem sam nejaka rozsireni pro ruzne nastroje, takze s dokumentaci na me nechod.

Takze jinak:

1) jak resi PHP Dependency injection? 2) jak PHP generuje server/client side validaci formularu? 3) jak PHP resi hezke URL? 4) jak PHP resi zachytavani udalosti, o kterych ani samotne nevi? 5) jak osetruje zakladni injections?

Odpovim jednoduse.. Nijak :) A to jsou jen zakladni veci, ktere od vyzaduji - proc bych se mel s timto zdrzovat, kdyz tyto veci potrebuji opakovane, to je mam neustale psat od piky? Proc?
30.7.2013 17:24 Kit
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
  1. Stačí uvést interface před formálním parametrem
  2. Validace v PHP také je
  3. Hezká URL mi vyrobí Apache
  4. Jako kdybys neznal obsluhu výjimek a zachytávání i fatálních chyb
  5. htmlspecialchars, urlencode, prepared statements, ...
Máš ještě nějaké otázky? Rád poradím :-)
1.8.2013 09:40 Mr.S1lent.cz
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
ad 1) Jak zajistis, ze budes mit v aplikaci vzdy jen jednu instanci nejake tridy a ze vzdy budes mit moznost pro ni ihned sahnout?

ad 2) To ze ma byt validace? :D Pod pojmem form validace si prestavuju, ze mi nejaky takovyto zapis:
$form->addPassword('password', 'Heslo:')
    ->setRequired('Zvolte si heslo')
    ->addRule(Form::MIN_LENGTH, 'Heslo musí mít alespoň %d znaky', 3);

$form->addText('zip', 'PSČ:')
    ->addRule(Form::PATTERN, 'PSČ musí mít 5 číslic', '([0-9]\s*){5}');
Vygeneruje: javascriptovou validaci s nejakym hezkym reportingem v html a server-side validaci v php

Tohle cele mi zabere napsat asi tak pul minuty. Jak dlouho ty budes resit tohle vsechno rucne vcetne nastylovani chybovych javascriptovych zprav? Samozrejme vcetne odladeni, protoze narozdil od meho otestovaneho frameworku tvuj kod otestovany neni

ad 3) Hezkou url mozna, ale odkazy nani? V cele aplikaci pouzivam macra nebo redirect metody v nejakych controlerech/presenterech ve tvaru:

{link presenter:akce} nebo {plink akcePresenteru} ci $this->redirect('presenter:akce'); kdyz chci pridat parametr, pouziju: {link presenter:akce, id => $id} atd...

Jak to resis ty? Pekne a neprehledne si vypisujes $_SERVER['HTTP... ? :) Mimo osklivy zapis to opet jako formularova validace vede k ruznym peklepum

ad 4) Udalosti mam na mysli ty, ze mam v presenteru nejaky zivostni cyklus, metody, ktere se volaji v controleru/presenteru pred vykreslenim, v prubehu, po, ktere se volaji pri startu controleru a jsou tim padem common, ci pri konecne fazi jakoby nejaky "__destruct". Vsechny tyto metody maji odpostatneni, kdyz mam nejaky zakladni model aplikace, ktery se chova podobne a muzu vyuzit dedicnosti.

ad 5) je sice hezke, ze tyto funkce znas, jde o to je ale chytre je pouzit. Pokud bude neustale zavazet nekde v kodu, jen to bude aplikaci zneprehlednovat. Je dobre je umistit do spravne aplikacni vrstvy. Ale opet neustale psani dokola je neefektivni.

Mas jeste nejake zacatecnicke zle navyky? Rad te navedu :)

PS: zatim jsi mi dokazal pouze to, ze pises 3 tuny zbytecneho kodu neustale dokola bez nejakeho opodstatneneho duvodu. Jo, vlastne duvod mas - "PHP je prece framework sam o sobe, tak proto budu psat a psat a chybovat a ladit, protoze proto" - nebo to delas kvuli tem 20ms rezie? :D
1.8.2013 10:42 DarkKnight | skóre: 24
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
ad 1. singleton, jak to delas ty?
ad 2. tobe to zabere pul minuty, mi to zabere minutu, zato budu presne vedet, ze tam neni nejaka bota
ad 3,4,5 - doporucil bych si zjistit neco o navrhovych vzorech a ne porad poukazovat jenom na ten balast z nazvem Dependency injection

zle zacatecnicke navyky tu mas snad jenom ty... prijde mi, ze jsi nikdy na zadnem vetsim projektu moc nedelal (ono tech 50 tisic radku nejakeho systemu + dalsi framework tomu odpovida, ta rychlost bude fakt zazracna, vlastne se bude lisit jenom o tech 20ms :) )

a propos, rozdil mezi aplikaci napsanou v cistem php a s pomoci frameworku je bezne vice nez 20ms, to jen tak na okraj...
1.8.2013 12:08 Kit
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
  1. Obvykle se to dělá Singletonem, ale pokud používáš DI, tak Singleton většinou nepotřebuješ. Singleton je zpravidla jen chybou v návrhu aplikace.
  2. Ptal ses na validaci. Ne na generování formulářů. To píšeš kvůli každému prvku ve formuláři takovou nudli? Pro každý jazyk extra? A co vrstvy, to ti nic neříká?
  3. Když umíš používat OOP, tak nepotřebuješ makra. Do šablony vložím přímo objekt který potřebuji. $_SERVER['HTTP... mám uklizený v modelu, aby mi metody kolem něj poskytovaly totéž, co ta tvoje makra. Přece ho nebudu v programu parsovat.
  4. Aha, tak na to mám Observer. Je součástí PHP.
  5. Právě psaní ve vrstvách mi umožňuje vyhýbat se používání nesmyslných frameworků a znovupoužívání kódu. Také mi to umožňuje psaní kratšího a přehlednějšího kódu, než jaký by byl s frameworkem.
Aplikace neladím, ale testuji. Je to efektivnější.
30.7.2013 16:57 Mr.S1lent.cz
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
Ted pracuju na informacnim systemu na webove platforme, kdy ma PHP kod bez html sablon zatim okolo 50 000 radku, a nedokazu si predstavit, jak bych to bastlil v cistem PHPku a resil zakladni funkcni logiku prostredi soucasne s logikou aplikace, tam by bylo tolik prostoru pro logicke chyby, ze by se vyvoj a hlavne odlazeni aplikace neskutecne prodrazilo.

Jde videt, ze nepracuje nikde v zadne fungujici firme, ale spis operujes jako teoretik, jinak by jsi mluvil uplne jinak. Navic oblibene frameworky vetsinou pisi docela zname osobnosti v programatorskem svete, ktere plati za velke kapacity v oboru, takze neni nutno se jich bat, spise naopak.
30.7.2013 20:37 Kit
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
Původní otázka zněla: "Jak můžu i já zjistit takový počet SQL dotazu do MySQL databáze v PHP,..." a ty se na něj vytasíš s frameworkem na 50000 řádek, když se to dá vyřešit na max. pěti řádcích i s komentáři.

Když píšeš program na 50000 řádek, tak to pro mne znamená, že ho neumíš se stejnou funkčností a ve vyšší kvalitě napsat na 20000 řádcích nebo méně. Nikdy se nechlubím, jak dlouhý program umím napsat, ale jak ho umím napsat krátký. 50000 řádek informačního systému bez šablon? To bude asi způsobeno nějakou zásadní chybou při návrhu. Mělo by to být podstatně kratší, aby se to snáze udržovalo.

A protože jsi četl nepozorně, tak jen připomínám, že jsem napsal, že dnes už na rychlosti programů tolik nezáleží. Záleží na rychlosti vývoje, která je s frameworkem sice zpočátku vyšší, ale později se to často krutě vymstí v nejrůznějších omezeních.
31.7.2013 11:45 Ash | skóre: 53
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
Navic oblibene frameworky vetsinou pisi docela zname osobnosti v programatorskem svete

Spíš bych zmínil jaké frameworky při tom psaní používají :)
31.7.2013 07:27 potato
Rozbalit Rozbalit vše Re: Jak zjistím v PHP počet SQL dotazů
Týmový vývoj velkých projektů ve firmách je byrokratický a neefektivní. Částečně to má i svoje opodstatnění (např. zvýšení bus factoru). Těžko ho ovšem lze dávat za příklad, když jde o úsporu času při vývoji.

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.