- Mateusz Żeromski | 2010-11-21 |
Komentarze: 11 |
CSS Optymalizacja
Css sprite ostatnio to bardzo popularne słowo. Jednak jak patrzę na praktykę – w ogóle nie widzę aby ktokolwiek przestawił się na tę super nowość. Tutaj postaram się opisać co to jest ten CssSprite gdzie można znaleźć przykłady oraz jak to zastosować. Można by powiedzieć iż temat jest banalny – ale dlaczego w takim razie jest tak rzadko wykorzystywany? Moim zdaniem wynika to z lenistwa i braku chęci doskonalenia swoich umiejętności.
czytaj dalej »
Rozwijając mój serwis pensje.net trafiłem na ciekawy problem. Otóż tworząc kreator raportów chciałem stworzyć funkcjonalność, która rozpoznaje czym są oddzielane wartości w wyszukiwaniu, np.: „programista php”, „programista,php”, „programista;php”. Ostatecznie chodziło o to aby wyciągnąć wartości „programista” oraz „php” i przeszukać tabelę pod ich kątem. Jako pierwsze rozwiązanie „explode” w pętli, lecz zanim zacząłem tworzyć poszukałem czegoś na wzór multi explode. Znalazłem funckję preg_split.
czytaj dalej »
Ciężko jest skategoryzować ten wpis – czy to bardziej mysql czy też php. Celem jest przedstawienie formy przechowywania danych w określonym przypadku. Załóżmy sytuację, że musimy w bazie danych przechowywać informacje które na poziomie samej bazy nie będą przetwarzane, a jedynie dopiero po odczytaniu przez php. Chodzi o to, że zamiast budować relację możemy przechowywać zserializowaną tablicę jako kolejną kolumnę w tabeli. Najlepszym przykładem są wszelkie systemy do zbierania informacji, które później trzeba przeanalizować, np.: systemy do zbierania statystyk.
czytaj dalej »
Poprzedni artykuł na temat silników baz danych wywołał krytyke artykułu z powodu pominięcia kluczy obcych w innodb – i słusznie :)W tym artykule napiszę krótki wstęp co to są te klucze obce po ci i podam jakiś przykład.
czytaj dalej »
Niedawno rozpocząłem pisać o bazach danych. Do tej pory omijałem te tematy z pełną świadomością ponieważ uważałem, iż dodanie indeksów spowoduje przyśpieszenie działania. Lecz w moich projektach pensje.net i grolix.pl problem z wydajnością zapytań okazał się poważniejszy, i nie wystarczyło dodać indeksów :) Ze skomplikowanymi zapytaniami poradziłem sobie wykonując tabele tymczasowe…
czytaj dalej »
Jakiś czas temu postanowiłem przeprowadzić test, jaki silnik mysql jest najlepszy w jakim przypadku. Kiedyś wszystko tworzyłem w myisam lecz teraz widzę, że to nie było zbyt dobrym posunięciem :). Mysql oferuje kilka silników i każdy z nich ma swoje wady i zalety. W tym artykule porównam te silniki podając konkretne zapytania sql, oraz czasy w jakich zostały one wykonane dla każdego modelu. Tym artykułem również rozpoczynam kategorię Bazy danych na moim blogu.
czytaj dalej »
Kontynuując cykl optymalizacji aplikacji przedstawiam wam moja super klasę cachowania.
Przyspiesza ona generowanie stronek dość istotnie.
Wyobraźmy sobie system informatyczny, serwis www czy też inne ustrojstwo,
zawsze w każdej aplikacji jest chociażby jedna funkcja, która jest często
wywoływana i jej wykonanie zajmuje więcej czasu niż 0.05 sek, a jej wynik
zmienia się dość rzadko, np raz na godzinę. Czemu więc by nie wykonać
optymalizacji takiej funkcji? A co jeżeli bardziej się nie da? I tutaj
właśnie przedstawiam rozwiązanie :).
czytaj dalej »
W poprzednim artykule opisałem możliwości gzipowania plików tekstowych zanim zostaną one przesłane do użytkownika. Lecz zanim strona będzie mogła zostać zgzipowana musi być wygenerowana. Aby uzyskać super wydajność tutaj również zastosować jakiś mechanizm. W zależności od potrzeb buduje się bardziej lub mniej złożone procedury cachowania wygenerowanej treści. Stosując prosty przykład pokazuję jak łatwo jest to zrobić dla swojej stronki domowej :)
czytaj dalej »
Ostatnio coraz głośniej się robi o tym jak sobie radzić z dużą ilością użytkowników bo jednoznacznie oznacza wysoki transfer. Jednym z lekarstw na tę okoliczność jest używanie gzipa – czyli przesyłanie spakowanych stronek do użytkownika. Dotyczy się to wszystkich plików tekstowych, czy również javascript i css. Pliki multimedialne możemy pominąć bo żaden kompresor nie spakuje jpg’a czy avika :)
czytaj dalej »
Dziś chciałem spakować trochę plików aby nie zajmowały miejsca. Był to „projekt” badawczy, polegał na sprawdzeniu jaka kompresja jest najlepsza. Praktycznie nie ma to znaczenia bo zawsze można dokupić kolejne 500GB dysku ale aby zaspokoić swoją ciekawość wykonałem test.
czytaj dalej »