| | | | Kolik include je únosných? | # | 
 |  | Dlouho jsem zdokonaloval html/Css, začínám s php a můj dotaz zní: Pokud mám web o jedné stránce s mnoha menšími "celky" na ní a chci každý celek dát do vlastního souboru, kolik include funkci je pro načteni jedne stránky únosných? Tedy, co když pro zobrazení index.php v prhlížeči se mi na serveru nejdřív poskládá třeba 30 .php souborů do sebe? Díky (odpovědět)
 |  | | reff | 94.113.156.* | 25.1.2015 7:57 | 
 | 
 | 
 | 
| | | | re: Kolik include je únosných? | # | 
 |  | lidičky prosím, kdo programujete v php dlouho a tvořili jste už nějaké složité věci.. 
 prostě do indexu se mi includne několik souborů a do nich se při zpracování zase includne několik souborů..
 
 takhle celkem třeba ve čtyřech úrovních až třicetkrát.. je to pro (běžný) hosting únosné? díky
 (odpovědět)
 |  | | reff | 94.113.156.* | 31.1.2015 1:05 | 
 | 
 | 
 | 
| | | | re: Kolik include je únosných? | # | 
 |  | Tohle je naprosté šílenství, pro rozsáhlé projekty Použij MVC (odpovědět)
 |  | | Hack3r64 | 88.101.126.* | 31.1.2015 12:04 | 
 | 
 | 
 | 
| | | | re: Kolik include je únosných? | # | 
 |  | Dobrý den, nemám kvalifikaci, kterou požadujete pro odpověď, ale vezměte to logicky: Každý include znamená další čtení z disku, což je strašně pomalá operace (oproti čtení z RAMky). Pokud se podíváte na např. frameworky (Nette, jQuery) - což jsou  právě ty složité aplikace - vydávají se ve verzi s mnoha soubory (pro vývoj a testování) a "minified" (zmenšené, 1 soubor se vším, tj. bez includů) verzi na produkci (reálné nasazení na hostingu).
 Nevím, kolik snese hosting - myslím, že nemá limit - záleží spíše, jak pomalé načtení stránky snesete Vy...
 (odpovědět)
 |  | | ivitek | 90.180.206.* | 31.1.2015 8:12 | 
 | 
 | 
 | 
| | | | re: Kolik include je únosných? | # | 
 |  | Pokud se ti nepovede vytvorit nejakou smycku, ktera by inkludovala sama sebe (coz by ti nejspis vyhodilo error a stranka by se ani nenacetla), tak pocet include muze byt neomezeny (zalezi na rychlosti serveru, klienta apod.) , ale je to zbytecne tohle vubec resit.... (odpovědět)
 |  | | ijkhkjbkoijoiou | 89.207.133.* | 31.1.2015 15:49 | 
 | 
 | 
 | 
| | | | re: Kolik include je únosných? | # | 
 |  | V tomto případě by chyba nevyskočila a skript by běžel až do svého timeoutu a inkludovaný soubor by se ve stránce objevil tolikrát, kolikrát by stačil interpret během timeoutu soubor inkludovat :) Proto je vhodnější místo funkce include používat její ekvivalent include_once, který zajistí, že bude soubor inkludován pouze jednou i v případě, že bude mít programátor snahu tento soubor inkludovat vícekrát. 
 ----------
 Sec-Cave.cz - [link]
 (odpovědět)
 |  |  | 
 | 
 | 
| | | | re: Kolik include je únosných? | # | 
 |  | Nevím přesně, jak je fce include naprogramována, ale můžeme to zkusit odhadnout a zobecnit. Víme, že funkce include zahrnuje do stránky obsah souboru, který je jí předán jako parametr (teď opomenu možnost, že by místo cesty k souboru mohla být argumentem rověž URL adresa). Jinými slovy: Můžeme odhadovat, že se zobecněně chová funkce include stejně, jako by řádek 
 include('file_x.php');
 
 byl interpretem jazyka nahrazen přímo obsahem souboru, takže něco jako
 
 $code = "echo 'Ahoj'; include('file_x.php'); echo 'Zdar';";
 
 $code = str_replace('include(\'file_x.php\');', file_get_contents('file_x.php'), $code);
 
 Tento pseudokód ber s velkou rezervou. Snažím se tím pouze ukázat, jak (hodně, hodně a hodně vzdáleně) s funkcí include zachází přímo interpret jazyka PHP.
 
 Z toho můžeme usuzovat, že spíše než výpočetně bude tento proces náročný paměťově. Ale i v tomto případě je pojem náročnost pravděpodoně irelevantní, protože nepředpokládám, že by tvůj výsledný kód měl celkovou velikost v řádu desítek a stovek megabajtů s tisíci a miliony iterací nebo generoval kód, který by se předával dál jako data a opět se nějak zpracovával :)
 
 Zavěr: Z mého pohledu je tvá obava neopodstatněná i v případě třiceti includů. To si samosebou můžeš sám otestovat přímo u sebe na testovacím serveru (asi - nemám s tím zkušenost) v debug módu. Co se praxe týká, stáhni si zdrojové kódy například WordPressu a prostuduj si je. Zjistíš, že těch includů tam mají taky požehnaně :)
 
 ----------
 Sec-Cave.cz - [link]
 (odpovědět)
 |  |  | 
 | 
 | 
| | | | re: Kolik include je únosných? | # | 
 |  | reff: nainstaluj si Apache JMeter a na vlastním serveru si zkus dopad na výkon serveru. Každá projekt je jiný, proto nečekej nějakou exaktní odpověď. 
 Osobně jsem řešil výkon Embedded web serverů. Zjistil jsem, že z důvodu maximální úspory prostředku je vhodné vkládat jak CSS tak Javascript přímo do html souboru. Výhoda se ztrácí až u hodně velkého CSS a Javascriptu. Tam je ale pak nutné správně nastavit cachování. Ono totiž u málo výkoných serverů (jako jsou v Embedded zařízeních) je důležité všechny data poslat ke klientovi v jednom TCP spojení. Tímto postupem se významně zvýší propustnost takového serveru. Nejsou totiž vyjímky kdy takový server dokáže obsloužit zároveň třeba pouhé tři sockety.
 (odpovědět)
 |  | | Hnz2 | 85.71.231.* | 31.1.2015 21:58 | 
 | 
 | 
 | 
| | | | re: Kolik include je únosných? | # | 
 |  | ok, díky za odpovědi :) (odpovědět)
 |  | | reff | 94.113.156.* | 3.2.2015 7:16 | 
 | 
 | 
 |