To jest tylko wersja do druku, aby zobaczyć pełną wersję tematu, kliknij TUTAJ
phpBB2 by Przemo
Support forów phpBB2 modified by Przemo

Propozycje modyfikacji - [propozycja] [beta] faster cache

maminowiec - 12-04-2011, 16:28
Temat postu: [propozycja] [beta] faster cache
Witam , oto mini modyfikacja która powinna przyśpieszyć forum o te parę ułamków sekund. Polega na modyfikacji funkcji cache'owania.

Oto co trzeba zrobić.

includes/functions.php

znajdź

Kod:
        $data = ($data) ? "<?php\n \$$file = unserialize(base64_decode('" . base64_encode(serialize($data)) . "'));\n?>" : "<?php\n?>";


zamień na

Kod:
    $data = ($data) ? "<?php\n \$$file = unserialize('" . str_replace("'", "\'", str_replace('\\', '\\\\', serialize($data))) . "');\n?>" : "<?php\n?>";


wyczyść katalog /cache oprócz .htaccess


Modyfikacja daje większe korzyści przy większych forach gdzie pliki cache są dość sporych rozmiarów , domyślna funkcja cache'owania generuje plik ok 33% większy oraz zużywa więcej zasobów serwera do zakodowania i odkodowania.

Oto parę testów.

Plik cache moja wersja ~ 200 KB , domyślna wersja ~ 267 KB
Moja wersja Strona wygenerowana w 0.007 s
Domyślna wersja Strona wygenerowana w 0.011 s

różnica 0.004 s


Na moim większym forum , przy mojej wersji
Strona wygenerowana w 0.15 sekundy (~0.15-0.16)

Domyśla wersja
Strona wygenerowana w 0.17 sekundy (~0.17-0.18)


Zapraszam do testowania.

Cassino - 12-04-2011, 17:03

Różnica co prawda nie jest wielka... Ale takie modyfikacje sa jak najbardziej przydatne... Zawsze jakiś ułamek sekundy forum ładuje się szybciej :)
PS: Testowałem u mnie, lecz ciężko stwierdzić jaka jest różnica, ponieważ nawet bez żadnych dodatków, wygenerowanie jest inne heh

maminowiec - 12-04-2011, 17:05

Przy większym forum widać różnice ;)
Anonymous - 12-04-2011, 19:14

maminowiec napisał/a:
Przy większym forum widać różnice ;)


Większym, czyli od ilu mniej więcej tematów/postów/użytkowników?

razz_ - 13-04-2011, 05:00

minimum 2000tysiące użytkowników.
maminowiec - 13-04-2011, 06:30

Scoobany napisał/a:
Większym, czyli od ilu mniej więcej tematów/postów/użytkowników?


W zasadzie zależy to od rozmiarów plików cache ,np plik ok 200 KB , sprawdźcie jakie macie największe pliku u siebie.
Oczywiście jeśli ktoś ma mniejsze też może stosować moją modyfikacje lecz efekty będą mniej widoczne.

Majkelo - 13-04-2011, 06:34

maminowiec, myślisz, że ten mod przyspieszy działanie forum przy 19.000 userach? Bo mam taki problem, że strasznie długo forum się wczytuje no i coś muszę działać.
BPL - 13-04-2011, 13:47

Zrób to zobaczysz :roll:
razz_ - 13-04-2011, 15:37

Michael2318 napisał/a:
myślisz, że ten mod przyspieszy działanie forum przy 19.000 userach?


coś na pewno pomoże, lecz nie myśl że po tym drobnym zabiegu forum będzie Ci śmigać jak nowe :roll:

danontico - 13-04-2011, 16:57

Testowo zainstalowałem na dużym forum.

Po tygodniu będę miał jakieś konkretne dane dotyczące loadu serwera. Jak nie zapomnę to na piszę coś o efektach.

Z tego co widzę przed zmianą były użyte jakieś funkcje kodowania i dekodowania. Czy ta zmiana nie wpłynie negatywnie na bezpieczeństwo? Nie znam się na php więc pytam.

Można by coś więcej napisać na czym polega ta zmiana dla nie kumatych :)

maminowiec - 13-04-2011, 18:07

Michael2318, jaki masz rozmiar plików w cache ?

danontico napisał/a:
Z tego co widzę przed zmianą były użyte jakieś funkcje kodowania i dekodowania. Czy ta zmiana nie wpłynie negatywnie na bezpieczeństwo? Nie znam się na php więc pytam.


Tak wcześniej dane był kodowanie , nie ma to wpływu na bezpieczeństwo danych.

danontico napisał/a:
Można by coś więcej napisać na czym polega ta zmiana dla nie kumatych




Cytat:
base64_encode() zwraca dane zakodowane za pomocą algorytmu base64. Ten sposób kodowania został zaprojektowany, aby móc bezpiecznie przesyłać dane binarne, poprzez warstwy transportujące nie zaprojektowane do obsługi 8 bitowego przesyłania informacji, np. treść emaili.

Dane zakodowane tą funkcją zajmują ok 33% więcej miejsca niż dane oryginalne.


Cytat:
base64_decode() dekoduje dane_zakodowane i zwraca oryginalną postać danych lub FALSE w przypadku niepowodzenia. Dane wynikowe mogą być binarne.


plusy hmm nie znam ;)
minusy
- Większy rozmiar plików
- Mniejsza wydajność

Moja modyfikacja usuwa to kodowanie przez co pliki są mniejszych rozmiarów i szybciej trwa ich wczytanie.

freeman3 - 14-04-2011, 11:19

Próbując zastosować Twoją poprawkę zauważyłem, że mam już wgrany ten drugi kod.

Czyżby już w jakiejś innej modyfikacji to było?

maminowiec - 14-04-2011, 14:24

freeman3, nie wiem , może już ktoś tego użył. Jakie modyfikacje wgrywałeś ?

Wiem ze była taka wersja cache na początku powstawania skryptu by Przemo.



Powered by phpBB modified by Przemo © 2003 phpBB Group