Drogie Użytkowniczki, Drodzy Użytkownicy!
Jak część z Was mogła zauważyć, na stronie głównej oraz w panelach
forum pojawiła się nowa pozycja – „Patronat Basoofki”.
Po długich i owocnych obradach administracji doszliśmy do wniosku, że może
to pomóc promować różne ciekawe inicjatywy
jak i ubogacić naszą stronę. Jeżeli będziecie wydawać album, grać trasę
koncertową, organizować imprezę związaną
w mniej lub bardziej bezpośredni sposób z basowaniem – bardzo chętnie
obejmiemy patronat w zamian za umieszczenie
loga Basoofki na okładce / plakacie / stronie internetowej :).
W związku z wymianą materiałów promocyjnych, pytaniami – piszcie na kapral
(małpa) basoofka.net.
Pozdrawiamy!
Przy okazji chciałbym przeprosić za kłopoty z ładowaniem strony – badamy na
bieżąco co jest grane, wyłączyliśmy kilka modułów (co takoż łatwo
zauważyć). Mamy nadzieję, że w niedługim czasie uda nam się poprawić
szybkość pracy Basoofki :).
Właśnie miałem pytać, czemu nie ma randomowych zdjęć 😀
A pomysł jak najbardziej trafiony
Kapral powiedział, że jak nie napiszę, że pielęgnujemy Basoofkę z
miłości do użyszkodników to nie wypłaci mi dodatku za administrację
serwerem. No więc piszę. I że myślimy o was. Ja osobiście budzę się z
krzykiem co 4 godziny kiedy dostaję mail z informacją o obciążeniu serwera.
Dodałem do adresatów Kaprala, niech też się budzi.
Hurra!!!
A ja się najbardziej cieszę z guzika do ignorowania pw 😀
„Po długich i owocnych obradach administracji” – ciekawym ile wódy
wypiliście:)
Brakuje jeszcze przycisku do ignorowania głupich postów.
Potwierdzam, przydałby się szczególnie na kilku ignorantów spod znaku
mieszania i zakłócania porządku
A u mnie dalej nie działa szybciej… 😛
Fucktycznie ładuje się pół browara czasu
W moim przypadku pół browaru oznacza hmm, trudno określić , prościej
zagiąć czasoprzestrzeń. Nie żebym browara nie lubił ja po prostu jestem
koneserem i lobię się delektować smakiem…
A co do ładowania to też mi się tak dłuży.
Dzisiaj jest już trochę szybciej, chyba że to wynika z wczesnej godziny 😉
Ja, głównie jako moderator prosiłbym o uniemożliwienie kliknięcia tego
samego guzika w przeciągu 5 sekund. Dzisiaj miałem „przyjemność” kasowania
tego samego tematu wklejonego OSIEM razy. I jest to codzienna radocha :/
Popieram Dante Moriusa, nie raz zdarzyło mi się dodać post lub temat parę
razy, ponieważ nie wiedziałem czy nacisnąłem czy nie, a bardzo długo się
ładowało.
hmm co do wysyłania jednego posta wiele razy to coś poszukam
ok Dante, dodałem taki myk, że nie da się wysłać kilka razy posta. Jedyne
czego się obawiam to ludzie z wyłączonym albo słabo obsługiwanym
javascriptem, ale zobaczymy czy to co wrzuciłem zda egzamin. Jakby były
problemy to piszcie.
Mnie działa i to bardzo szybko (ranek, mały ruch), zobaczymy jak będzie
szło dalej. Dziękuję za korektę 🙂
08:18 – ciągnie się jak guma do żucia… :/
porazka
nawet nie wyobrażam sobie odpalić basoofki na IE 🙂 to byłby dopiero mega
lag
Ale tak na poważnie – fajnie że problem jest adresowany. I tak już
przyzwyczaiłem się że włączam basoofkę, przeglądam inne strony przez 10
minut i wracam na forum 😀
No to standard – odpalasz karty, przewalasz facebooka, basscity i wracasz,
odświeżasz karty załadowane z błędem, przeglądasz załadowane dobrze,
przeglądasz załadowane od nowa. 😉
Cześć
niech osoba, która ma dostęp do serwera odezwie się na priv to podpowiem co
można zrobić żeby przyspieszyć stronę.
Tak zrobimy.
Żeby obrazowo wyjaśnić:
Wyświetlenie strony to pobranie treści HTML oraz wszystkich
dodatków typu obrazki, CSS, JavaScript itp – czyli masa rzeczy,
które serwer musi „zrobić”.
Bez wdawania się w szczegóły – dodanie do obrazków, CSS, JavaScript
nagłówków informujących że wyżej wymienione rzeczy nie zmieniają
się co 5 sek zaoszczędzi Wam wysyłania tego wszystkiego za każdym
razem. Zaoszczędzicie masę pytań do serwera i transferu. Powinniście
wysyłać poniższe nagłówki:
# Vary: Accept-Encoding, User-Agent
# Pragma: public
# Cache-Control: public, post-check=604800, max-age=604802,
pre-check=604801
Druga rzecz. Przeglądarka zaczyna wyświetlać stronę jeśli
ma kod HTML oraz CSS czyli po wysłaniu dwóch rzeczy – ludzie mogli by już
czytać a obrazki by się powoli dociągały. Sprawcie żeby to było u samej
góry w kodzie – wydaje mi się, że ludzie poczekają na obrazki jak będą
mogli już czytać posta.
Trzecia Pomyślcie nad wrzuceniem JavaScript na sam dół
strony bo to cholernie spowalnia. W dużym uproszczeniu – przeglądarka może
pobierać 8 rzeczy równocześnie, wyjątkiem jest plik JavaScript. Jeśli
macie te pliki u samej góry (a macie) to przeglądarka zamiast ciągnąć 8
kanałami to ściąga jednym. (w ogóle JS u Was się nie zmienia – więc patrz
punkt pierwszy – po co go wysyłać co chwilę skoro się nie zmienił).
Cztery Możesz skompresować pliki CSS, JavaScript programem
7-Zip (wybierasz opcje deflate). Wgrać na serwer i w htaccess ustawić żeby
wysyłał je skompresowane – zamiast 100KB będzie 20KB wysyłał.
Pięć Zablokuj zbędne roboty – u mnie to dużo dało.
Możesz zablokować w htaccess lub iptables spamerskie roboty wg ich IP – np
wszystkie IP z Azji.
Możesz dać np w index.php
# if (preg_match(„#(rogerbot|ahrefs|mj12|archive)#si”,
$_SERVER[HTTP_USER_AGENT])) {
# exit();
# }
oraz w robots.txt
# User-Agent: MJ12bot
# Disallow: /
# User-Agent: rogerbot
# Disallow: /
# User-Agent: AhrefsBot
# Disallow: /
# User-Agent: ia_archiver
# Disallow: /
# User-Agent: *
# allow: /
# sitemap:
adres].xml
# Crawl-delay: 5
Pomysł 6 – do zdjęć wysyłaj ETag. Jeśli osoba
przeglądająca odświeża stronę, cofa się do
kategorii, w której już była – po prostu już jakieś
zdjęcia ma pobrane to wysyła do Waszego serwera
„HTTP_IF_NONE_MATCH”
Jeśli takie coś Ci wysyła to znaczy, że ma już zdjęcie – teraz –
niepotrzebnie je wysyłacie za każdym razem. Wystarczy, że serwer odpowie
„304 Not Modified”.
Dużo zaoszczędzicie bo jak patrzyłem to zamiast 1MB zdjęć i awatarów
serwer wyśle „304 Not Modified”.Włączcie TYLKO do
zdjęć.
Możecie to w htaccess włączyć lub napisać sobie takie coś w php
# if ( isset($_SERVER[HTTP_IF_NONE_MATCH]) ) {
# header(„HTTP/1.1 304 Not Modified”, TRUE, 304);
# exit();
# }
Jeśli macie dostęp do serwera – poproś o zainstalowanie modułu PHP „APC” –
samo włączenie APC daje większego kopa niż wszystkie powyższe razem
wzięte.
Jeśli nie jesteście w stanie zmienić powyższych – zmieńcie hosting na
tańszą opcję a zaoszczędzoną kwotę przeznaczcie na CloudFlare lub jeszcze
darmowe Google PageSpeed Service.
Sorry, że tak po jednym zdaniu ale to nie forum informatyczne 😉
Tak się składa, że obaj admini to informatycy – dzisiaj zmobilizuję palika
i zerkniemy, co z tym można zrobić, dzięki za podpowiedzi, jakby co –
pozwolimy się jeszcze odezwać na privie ;).
to co opisałeś jest super pomocą, za którą w imieniu wszystkich (ale
przede wszystkim swoim) dziękuję pięknie. Zobaczymy ile tego da się
wdrożyć w życie.
Co do serwera to mamy dość mocnego dedyka (4GB ram, 3 rdzenie) z dostępem
root, jest Varnish, APC, Memcached (konfiguracja według
http://www.library.linode.com/application-stacks/project-mercury/ubuntu-10.04-lucid
) ale obawiam się, że gdzieś jest jakieś wąskie gardło, albo błąd w
konfiguracji, powodujący pojawianie się bardzo długiej zwłoki w
rozpoczęciu serwowania strony a także kwerend w slowlogu mysqla
kolejny problem to ten, że czas jaki mogę poświęcić na doszkalanie się z
administracji linucha, varnisha, apache, mysql i tak dalej, jest mocno
ograniczony (zazwyczaj 2-3 dni późne wieczory w miesiącu)
Ale skoro pojawił się nowy chętny do pomocy, to postaram się wytrzasnąć
więcej czasu 🙂
No to dobrze :). To ile Wy macie zapytań na sekundę (nie osób)??
Jeśli nie macie programu pocztowego na serwerze z antywirusem to 4GB na
stronę to jest sporo … 1000/sek??
Wydaje mi się, że nagłówki Cache oraz blokada BOTów dużo da, a w 3h to
się zrobi. Zmniejszysz o ok. połowę ilość zapytań do serwera i
oszczędzicie na transferze.
W linku, który przesłałeś :
W połowie manuala masz konfig „File:/etc/varnish/pressflow.vcl” – to Wam nie
działa bo nie wysyła nagłówków.
pomyślałbym nad CRON – na samym dole tego manuala. Sprawdź czy nie wtedy
przywiesza serwer – może nie uruchamiać CRONa w „szczycie
oglądalności”.
– Sesje trzymacie w MemCached ??
– czemu macie kilka możliwych „dojść” do strony chodzi mi o porty
np w mailingu macie stronę
https://basoofka.net/:9880/??
To jest osobna sesja trzymana na serwerze – przy 1000 osób robi Wam się 2000
sesji na dysku…
w google jest www.basoofka.net oraz bez www, samo basoofka.net
– to już Ci się robią 4 kombinacje. Dla serwera to są 4 różne strony
mimo, że wyświetlają to samo – jest to ważne bo np Varnish trzyma 4x
więcej w RAM, albo np. serwer buduje stronę, którą już ma w cache.