Rychlost Neonu a jeho použití pro primitivní úložiště

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
na1k
Člen | 288
+
0
-

Kdysi v dobách konfiguráků v ini David psal, že je parsování tak rychlé, že se ani nevyplatí konfiguráky kešovat. Zajímalo by mě, jak je na tom s výkonem Neon parser.

Napadlo mě ukládat si do neon souboru drobnosti, kvůli kterým nemá smysl vytvářet tabulku v databázi (která by stejně byla na úrovni klíč=>hodnota, případně lehce složitějšího, ale nic světoborného), ale které jsou potřebné při vykreslování stránky (např. pro rozhodování; ne přímo data).

Bylo by v tomhle případě vhodné použít neon? Nehrozí zpomalení tím, že by se soubor musel číst při každém renderování? Je to řešení použitelné i pro desetitisícové návštěvnosti? Mělo by cenu naparsovaný soubor kešovat?

Mikulas Dite
Člen | 756
+
0
-

Použil bych databázi, pokuď ta aplikace nějakou má. I kdyby to měl být jenom soubor (sqlite). Pokud to má být dynamické, tak se neon bude hlavně špatně generovat. Nestačí ti právě to ini? Funkce má skoro stejné, ale není tak hezké.

na1k
Člen | 288
+
0
-

Asi je mi jedno, jestli by to bylo ini nebo neon. Spíš to beru tak, že neon je tak nějak aktuálnější (a pravda, taky hezčí).

Databázi jsem se chtěl vyhnout, jelikož má jít o data, kde nepotřebuji žádnou integritu, typovost nebo něco podobného. Na druhou stranu by se mi hodila jednoduchá strukturovanost. Plus bych mohl drobné úpravy provádět ručně jen přes FTP. Stejně tak pokud chci něco zkontrolovat, tak se na soubor podívám a vidím. U db se musím proklikat na tabulku, v ní na řádek a stejně pořád neuvidím celý kontext.

Abych to lépe popsal, rád bych to použil pro nějaké obecné nastavení webu (upravitelné, takže by se četlo i generovalo). Tedy nějaké texty, booly, možná datumy, ale třeba i pole (o předem neznámé velikosti).

Jasně, mohl bych to napasovat na tabulku, pole serializovat a nějak se s tím poprat. Určitě by to i fungovalo. Otázka ale zůstává, jaký je výkonostní rozdíl mezi čtením ze souboru (+ parsování neonu) a z databáze?

grey
Člen | 94
+
0
-

A co xml? Přímo v php má podporu dobrou…

na1k
Člen | 288
+
0
-

XML má mnohem nižší čitelnost a věřím že i jeho parsování bude pomalejší než neon.

Posouváš ale otázku trochu dál než jsem původně chtěl. Skutečně mi jde jen o porovnání rychlosti DB/neon(/ini). Důvody a cíle jsem už popsal nahoře.

maio
Člen | 7
+
0
-

Nejspis to bude vyrazne rychlejsi nez DB. Kazdopadne pokud resis performance tak si to zmer a rozhodni se podle toho.

Patrik Votoček
Člen | 2221
+
0
-

jako fakt simple úložiště dat bych použil sqlite… pokud je to i moc chytré kouni po nette cache… :-) pokud chceš něco trochu jiného tak serializace/ var_export PHP do souborů ;-)

David Grudl
Nette Core | 8228
+
0
-

Proč si to nezměříš? Když zjistíš, že číst z databáze trvá (příklad) řádově déle než parsování neonu, tak otázka padá.

grivaldu
Člen | 13
+
0
-

Souhlas s Davidem, protoze vysledek bude na kazdem stroji jiny. Napr. nacitani z naseho produkcniho SQL serveru je rychlejsi nez nacitani dat z cache na disku Apache serveru. Je to vzdy zavisle na objemu ulozenych dat, pouzitem filesystemu a konfiguraci stroje. :)