Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Zapisywac w pliku czy w bazie?
Ruio
post
Post #1





Grupa: Zarejestrowani
Postów: 147
Pomógł: 9
Dołączył: 20.02.2009

Ostrzeżenie: (0%)
-----


Jak myślicie, czy pomysł z zapisem rozbudowanych stron html (treści strony(podstrony dokładniej) wraz z indywidualnymi znacznikami html/js dla danej strony (typu span, p itd)) w bazie danych jest dobrym pomysłem? Może lepiej zapisywać je w pliku tekstowym ?
Zależy mi na możliwości edycji tych danych z poziomu przeglądarki winksmiley.jpg
Co powinno szybciej działać?

Z góry dzięki za pomoc.
Go to the top of the page
+Quote Post
Fifi209
post
Post #2





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Pliki bo to treść dość statyczna - edycja tylko, gdy Ty będziesz miał ochotę.
Z resztą prościej coś "zabrać" z pliku niż z bazy. ;]


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
Crozin
post
Post #3





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Baza danych, bo:
1. Pewnie i reszta danych jest w niej trzymana, a wygodniej jest mieć wszystko w jednym miejscu.
2. Łatwiej tym zarządzać.

W plikach też może oczywiście być. Przy takich "wymaganiach" każde rozwiązanie będzie równie dobre co złe.
Go to the top of the page
+Quote Post
Ruio
post
Post #4





Grupa: Zarejestrowani
Postów: 147
Pomógł: 9
Dołączył: 20.02.2009

Ostrzeżenie: (0%)
-----


hehe wymagania - ciężko nimi nazwać jedno zdanie winksmiley.jpg chodzi mi o szybkość działania i łatwość użycia. Crozin masz racje, reszta jest w bazie winksmiley.jpg Raczej zrobię to w bazie, tak jak myślałem na początku winksmiley.jpg
Go to the top of the page
+Quote Post
kiler129
post
Post #5





Grupa: Zarejestrowani
Postów: 566
Pomógł: 35
Dołączył: 21.06.2006

Ostrzeżenie: (0%)
-----


A ja przerwę drakę i powiem, że i tu i tu smile.gif
W bazie trzyma się całość a cache robi się w plikach. Najlepiej cachować gotową, wygenerowaną podstronę wtedy gdy ktoś ją odwiedzi a cachować stare pliki cache za pomocą crontaba (lecisz co 24h i sprawdzasz których data użycia jest starsza niż np. 10 dni), oraz gdy następuje edycji/kasowanie podstrony.


--------------------
flexiCMS v2 [|||||||+--] 75% done
Go to the top of the page
+Quote Post
Fifi209
post
Post #6





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Cytat(kiler129 @ 20.01.2011, 08:36:47 ) *
A ja przerwę drakę i powiem, że i tu i tu smile.gif
W bazie trzyma się całość a cache robi się w plikach. Najlepiej cachować gotową, wygenerowaną podstronę wtedy gdy ktoś ją odwiedzi a cachować stare pliki cache za pomocą crontaba (lecisz co 24h i sprawdzasz których data użycia jest starsza niż np. 10 dni), oraz gdy następuje edycji/kasowanie podstrony.

Wystarczy nowe cache robić tylko podczas dodania nowych danych/edycji/kasowania, nie trzeba akurat co 10 dni (wiem wiem, przykład).


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
Zyx
post
Post #7





Grupa: Zarejestrowani
Postów: 952
Pomógł: 154
Dołączył: 20.01.2007
Skąd: /dev/oracle

Ostrzeżenie: (0%)
-----


Ja stosuję u siebie często rozwiązanie następujące. W bazie mamy dwa pola, np. content oraz content_html. Przy zapisywaniu dokumentu przechodzi ona przez jakiś parserek, który produkuje ze znaczników kod HTML. Oryginalną treść, która jest potrzebna wyłącznie do celów edycyjnych kompresuję i zapisuję w content, zaś treść w formacie HTML ląduje w content_html. Podczas wyświetlania pobieram jedynie content_html. Jeśli jest potrzeba, nakładam na to dodatkowo jakiś cache, żeby nie trzeba było łączyć się z bazą w celu pobrania treści.


--------------------
Specjalista ds. głupich i beznadziejnych, Zyx
Nowości wydawnicze: Open Power Collector 3.0.1.0 | Open Power Autoloader 3.0.3.0
Go to the top of the page
+Quote Post
Fifi209
post
Post #8





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Zyx wydaje mi się, że jednak tracisz miejsce - niby mały problem, bo dziś koszt jednego gigabajta to drobiazg ale... ;p


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
Crozin
post
Post #9





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


@fifi209: Wiesz, że to się nazywa... cache?
Go to the top of the page
+Quote Post
Ruio
post
Post #10





Grupa: Zarejestrowani
Postów: 147
Pomógł: 9
Dołączył: 20.02.2009

Ostrzeżenie: (0%)
-----


Z tego co widzę każdy ma wypracowany sposób jak pracuje mu się najlepiej i wg. niego jest najwydajniej winksmiley.jpg Z cache dobry pomysł, na pewno zrobię tak jak mówicie winksmiley.jpg
Go to the top of the page
+Quote Post
Fifi209
post
Post #11





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Cytat(Crozin @ 20.01.2011, 13:19:35 ) *
@fifi209: Wiesz, że to się nazywa... cache?

Miałem na myśli zapisywanie w bazie dwóch wersji + cache, wystarczy jedna i cache. ;p


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
Zyx
post
Post #12





Grupa: Zarejestrowani
Postów: 952
Pomógł: 154
Dołączył: 20.01.2007
Skąd: /dev/oracle

Ostrzeżenie: (0%)
-----


Cache jest opcjonalny, w dodatku może być robiony w pamięci RAM. Jeśli dokładnie wiemy, kiedy przetworzona zawartość może się zmienić, nie musimy stosować mechanizmów cache z czasem życia, bo po co? Rozwiązanie ma tę zaletę, że dzięki takiemu podziałowi nie trzeba korzystać z cache, co ma duże znaczenie w sytuacji, gdy skorzystać z niego nie można (np. gdy zwracane dane zależą od konkretnego użytkownika, ustawień personalizacyjnych i uwzględnienie każdego możliwego przypadku mogłoby doprowadzić do zapchania serwera).

Ten post edytował Zyx 20.01.2011, 15:12:49


--------------------
Specjalista ds. głupich i beznadziejnych, Zyx
Nowości wydawnicze: Open Power Collector 3.0.1.0 | Open Power Autoloader 3.0.3.0
Go to the top of the page
+Quote Post
Crozin
post
Post #13





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


@fifi: O jakich dwóch wersjach i cache Ty piszesz? Przecież ta wersja content_html jest jest właśnie cache. Przecież cache może być trzymany w bazie danych.
Go to the top of the page
+Quote Post
Fifi209
post
Post #14





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Crozin jaki sens ma trzymacie cache w bazie? Chyba chodzi o ograniczenie zapytań do bazy.


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
vermis
post
Post #15





Grupa: Zarejestrowani
Postów: 279
Pomógł: 56
Dołączył: 3.06.2010
Skąd: Tarnowskie Góry

Ostrzeżenie: (0%)
-----


Taki sens, że nie robisz złączeń, nie przetwarzasz danych, nie generujesz html. Tylko pobierasz i ładujesz na stronę.


--------------------
Go to the top of the page
+Quote Post
kiler129
post
Post #16





Grupa: Zarejestrowani
Postów: 566
Pomógł: 35
Dołączył: 21.06.2006

Ostrzeżenie: (0%)
-----


Cytat(fifi209 @ 20.01.2011, 10:02:45 ) *
Wystarczy nowe cache robić tylko podczas dodania nowych danych/edycji/kasowania, nie trzeba akurat co 10 dni (wiem wiem, przykład).


Źle mnie zrozumiałeś smile.gif
Chodziło mi o to, aby coś co piszemy było skalarne - z crona wywalasz pliki cache nieużywane przez dłuższy okres. W małym serwisie gdy artów jest np. 10 nie ma problemy, 100 już gorzek, le jak w serwisie robi się np. 10 artów dziennie (czy też newsów) to zakładając, że 1 art = 1 plik cache to przez rok masz ponad 3600 plików jednego typu smile.gif
A po co trzymać cache czegoś czego nikt dawno nie odwiedza po za google za ruski rok?


--------------------
flexiCMS v2 [|||||||+--] 75% done
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 04:06