Dołącz do zespołu ekspertów! Backend lub Frontend Developer?

Sprawdź najnowsze oferty pracy naszego partnera - 8lines.io!

Cache w MyBB

Założony przez  DamYan.

Jakie macie doświadczenia w użytkowaniu cache w MyBB?
Wiadomo, że najmniej optymalnym (i ustawionym w standardzie) jest baza, ale z drugiej strony czy warto przechodzić np. na pliki?
Ja jadę na plikach (elfbot.pl).

Innych systemów nie miałem okazji przetestować ale chyba ich spróbuje (jak bede mial zainstalowanego linuksa).
Warto.
(18.03.2010, 18:56)Taxido napisał(a): Warto.

Piękna odpowiedź, Tax ;) Co zyskujemy, co tracimy? :D
Czas dostepu do pliku jest nizszy niz do bazy.
Co tracimy? Nic.
(18.03.2010, 19:23)Taxido napisał(a): Czas dostepu do pliku jest nizszy niz do bazy.
Co tracimy? Nic.

A bezpieczeństwo?
Co do bezpieczeństwa:
Żadna rożnica czy dane sa przechowywane w plikach php jako tablica i includowane, czy w bazie. Oba rozwiazania sa tak samo "niebezpieczne";
(18.03.2010, 19:43)Taxido napisał(a): Co do bezpieczeństwa:
Żadna rożnica czy dane sa przechowywane w plikach php jako tablica i includowane, czy w bazie. Oba rozwiazania sa tak samo "niebezpieczne";

Tylko, że do bazy nie możesz się dostać bez hasła, natomiast do plików - nie będzie problemu.
W takim wypadku dostaniesz sie tez do inc/config.php i masz dane do bazy.
Cache do DB to pomyłka. ;-)
Bo to z lekka tak, jak wyciągać coś z DB i z powrotem tam pakować.
Cache na plikach jest najbardziej odpowiednie na shared, testowałem xcache w mybb(na serwerze znajomego) i działa nie za dobrze, innych cacherów nie testowałem. Acz brakuje trochę apc.
Serwery CS REKSIO:))
(18.03.2010, 19:23)Taxido napisał(a): Czas dostepu do pliku jest nizszy niz do bazy.
Co tracimy? Nic.

(18.03.2010, 19:27)DamYan napisał(a): A bezpieczeństwo?

(18.03.2010, 19:52)DamYan napisał(a): Tylko, że do bazy nie możesz się dostać bez hasła, natomiast do plików - nie będzie problemu.

(18.03.2010, 19:54)Taxido napisał(a): W takim wypadku dostaniesz sie tez do inc/config.php i masz dane do bazy.

Rozwaliliście mnie.

Od kiedy DamYan dostajemy się lajtem do plików .php? ;)
(18.03.2010, 21:54)Victor napisał(a): /.../

Rozwaliliście mnie.

Od kiedy DamYan dostajemy się lajtem do plików .php? ;)

Od nigdy ;) Po prostu "głośno" myślałem. Jakoś nie lubię, gdy dane leżą sobie grzecznie w jakimś katalogu, dlatego zawsze staram się jakoś zabezpieczać.
(18.03.2010, 18:46)DamYan napisał(a): Jakie macie doświadczenia w użytkowaniu cache w MyBB?
Wiadomo, że najmniej optymalnym (i ustawionym w standardzie) jest baza, ale z drugiej strony czy warto przechodzić np. na pliki?

Warto - cachowanie w bazie de facto nie jest cachowaniem. Przecież mamy na celu zmniejszenie liczby zapytań / objętości danych pobieranych z bazy.

(18.03.2010, 19:23)Taxido napisał(a): Czas dostepu do pliku jest nizszy niz do bazy.
Co tracimy? Nic.

Niekoniecznie. Operacje i/o zabierają najwięcej czasu i są z pewnością wolniejsze niż zapytanie do bazy. Zależy, co się robi i jak działa cache. Gdy mamy multum plików w cache (np. 1000 i więcej) to samo sprawdzanie ich znacznika czasu może być dosyć wolne. Oczywiście w mybb takiego czegoś nie ma.

(18.03.2010, 19:27)DamYan napisał(a): A bezpieczeństwo?

.htaccess załatwia sprawę. Poza tym same pliki również mogą być jakoś zabezpieczane. Choć czy ja wiem, czy oby na pewno jest sens... w cache powinno się trzymać np. style, wszystkie szablony, jakieś zbiory typu "userzy z ostatnich 24 godzin" (z aktualką co 1 h przykładowo), wszelkie ważne dane, w tym ustawienia, powinny iść IMO jednak z bazy.


Tu właśnie mam takie ALE - nawet jak się w mybb włączy cachowanie, to większość rzeczy i tak i tak idzie z bazy. W sumie to tylko styl css (sic! co za kretynizm wrzucać to do bazy?!) i ustawienia idą do cache.
(19.03.2010, 16:11)lukasamd napisał(a):
(18.03.2010, 18:46)DamYan napisał(a): Jakie macie doświadczenia w użytkowaniu cache w MyBB?
Wiadomo, że najmniej optymalnym (i ustawionym w standardzie) jest baza, ale z drugiej strony czy warto przechodzić np. na pliki?

Warto - cachowanie w bazie de facto nie jest cachowaniem. Przecież mamy na celu zmniejszenie liczby zapytań / objętości danych pobieranych z bazy.

Nie do konca sie z tym zgodze. Cache w bazie to zserializowane tablice, czesto generowane z kilku zapytan. Jego zawartosc (przechowywane dane) jest identyczna jak cache'u plikowego itp. (o czym pod koniec posta.
(19.03.2010, 16:11)lukasamd napisał(a):
(18.03.2010, 19:23)Taxido napisał(a): Czas dostepu do pliku jest nizszy niz do bazy.
Co tracimy? Nic.

Niekoniecznie. Operacje i/o zabierają najwięcej czasu i są z pewnością wolniejsze niż zapytanie do bazy. Zależy, co się robi i jak działa cache. Gdy mamy multum plików w cache (np. 1000 i więcej) to samo sprawdzanie ich znacznika czasu może być dosyć wolne. Oczywiście w mybb takiego czegoś nie ma.
Zgodze się, lecz jaak am zauwazyłes mojawypowiedź dotyczy mybb gdzie cache to kilkadziesiąt plikow.

(19.03.2010, 16:11)lukasamd napisał(a):
(18.03.2010, 19:27)DamYan napisał(a): A bezpieczeństwo?

.htaccess załatwia sprawę. Poza tym same pliki również mogą być jakoś zabezpieczane. Choć czy ja wiem, czy oby na pewno jest sens... w cache powinno się trzymać np. style, wszystkie szablony, jakieś zbiory typu "userzy z ostatnich 24 godzin" (z aktualką co 1 h przykładowo), wszelkie ważne dane, w tym ustawienia, powinny iść IMO jednak z bazy.
.htaccess jest zbedny
Cache plikowy jest zapisywany w postaci plików php <? var export(); php ?> a następnie includowane Dane sa tak samo bezpieczne jak zapisane w inc/config.php . .htaccess bylby potrzebny wprzypadkuzapisywania zserializowanych danych (co jest wydajniejsze).
Co do ustawień, za to jest odpowiedzialny plik inc/settings.php (generowany przez skrypt z ustawień z bazy). Wydje mi się że nie zaznajomiłeś sie zbyt dokladnie z tym zagadnieniem.

(19.03.2010, 16:11)lukasamd napisał(a): Tu właśnie mam takie ALE - nawet jak się w mybb włączy cachowanie, to większość rzeczy i tak i tak idzie z bazy. W sumie to tylko styl css (sic! co za kretynizm wrzucać to do bazy?!) i ustawienia idą do cache.

Nie do końca, cachowane są też inne dane, co nie zmienia faktu że cache nie obejmuje wielu zagadnień, kttore tak naprawde powinny byc cachowane.


A teraz ogolny opis jak dziala klasa cache
Inicjalizacja:
Ladowany jestt handler do obslugi cache'u (jesli inny niz db).
Zapis:
Dane sa jednoczesnie zapisywane przez handler (np. do pliku) jak rownież do bazy (tabela datacache)
Dane a jednoczzesnie zapisywaane do bazy i do handlera
Odczyt:
Najapierw próba odczytu poprzez handler, jeśli nieudana to probuje odczytac z bazy ? udana z bazy to odczytane dane rowniez sa zapisywane przez handler : nieudana generowana jest zawartosc cache'u i zapisywana w bazie i poprzez handler.
Zdecydowanie memcache.



Użytkownicy przeglądający ten wątek:

4 gości