deleted rubrika: Programování: PHP

Anonym
položil/-a 16.8.2016
 
upravil/-a 23.8.2018

deleted

odkaz
5 Petr Soukup
odpověděl/-a 17.8.2016

Načítat z čehokoliv (třeba json), ale cachovat do PHP souboru. Není nutné nic parsovat a hlavně se použije opcache, takže se při správném nastavení nemusí ani sahat na disk.

Komentáře

  • maryo : Zrovna ten JSON nebo i INI je na parsování v PHP tak levný, že cachovat to je často kontraproduktivní vzhledem k tomu, že cachování s sebou vždycky nese potenciální riziko. Ale jestli se nad tim dělaj nějaký validace nebo transformace, pak to ani jinak moc nejde :) 17.8.2016
  • Petr Soukup : Parsování je ale jen jedna část problému (ta menší) - větší problém může být přístup na disk. Celá aplikace může běžet vesele z ram díky opcache, ale kvůli konfiguraci se musí stejně podívat na disk. 17.8.2016
  • Kit : Na disk se dívat nemusí, protože data toho souboru jsou také v cache. V cache tedy rozdíly nejsou. 17.8.2016
  • maryo : Jak přesně se to cachuje mezi procesama v rámci OS nebo webserveru netuším, asi taky jak kde. Netvrdím, že necachovat. Určitě se najdou případy kdy to bude dražší nebo ne o moc rychlejší a kdy to bude výrazně levnější. Jen upozorňuju, že třeba u načítání jednoho JSONu per request je jakýkoliv starání se o cache dost často jen mikrooptimalizací tipuju v řádu jednotek milisekund u středně vytíženýho a výkonnýho serveru. 17.8.2016
  • Kit : Můj stařičký Celeron si v PHP natáhne JSON z HDD a rozparsuje do pole za cca 0.5 ms. Pochybuji, že to běžném serveru bude trvat déle. 17.8.2016
  • Petr Soukup : Nejde o to, jak dlouho to trvá. Pokud ale je na serveru velký provoz, tak tenhle přístup na disk může být bottleneck. Na druhou stranu ale pokud to je SSD, tak se to reálně asi moc nestane. Nemluvě o tom, že správně nastavený systém by měl mít v ramce i ten json. 17.8.2016
  • Palo77 : @Petr Soukup: Snad si nemyslis ze sa to bude vzdy nacitavat z disku. Ved to pojde z OS cache takze z RAMky. Neoptimalizujte optimalne. 17.8.2016
  • Kit : Proto jsem psal "z HDD". Je snad jasné, že fyzicky by to za těch 0.3 ms nezvládl, že to musí být z cache (+0.2 ms bylo to parsování). 17.8.2016

Pro zobrazení všech 9 odpovědí se prosím přihlaste:

Rychlé přihlášení přes sociální sítě:

Nebo se přihlaste jménem a heslem:

Zadejte prosím svou e-mailovou adresu.
Zadejte své heslo.