Rafał D.

Rafał D. freelancer

Temat: Joomla 3 i obciążenie bazy danych MySQL

Cześć

Mam na hostingu współdzielonym stronę w Joomla 3.1 i przy 1000 UU/dobę przeciąża bazę danych MySQL.

"W ciągu ostatnich 24 godzin Państwa konto wygenerowało obciążenie wyższe, niż dopuszczalny limit dla wykupionej usługi.
Nasz system odnotował obciążenie na poziomie *3935s* z limitu 1800s/dobę.
Limit dotyczy maksymalnego wykorzystania czasu procesorów przez pojedynczego użytkownika MySQL.
Czas połączenia: 112925s
Czas użycia MySQL: 94629s
Czas procesorów: 3935s (!)"

Szablon: własny, zrobiony w oparciu o Bootstrap
Komponenty to: Agora, AcyMailing, JCE Editor, JomSocial, Komento i TorTags.
Moduły: Dropdown MegaMenu, Slideshow CK, News Pro GK4, Tabs GK5 , Jomsocial Photos Module Extended, Jomsocial Videos Module Extended, Agora Pro Latest Posts...

I teraz najciekawsze (!)
Najwięcej czasu procesora schodzi na zapytania:
# Rank Query ID Response time Calls R/Call V/M Item
# ==== ================== ============== ===== ======= ===== =============
# 1 0x31A59602BC0AFC76 268.2647 49.4% 16 16.7665 7.15 UPDATE
auto_session
# 2 0xC74BC01C5442C1DB 96.1886 17.7% 6 16.0314 7.93 INSERT
auto_session
# 3 0xC474ABBADC7AE1CA 41.4031 7.6% 2 20.7015 1.18 SELECT
auto_content auto_categories auto_users auto_categories
# 4 0xD9D9CB530FF9D5F0 37.1029 6.8% 2 18.5515 1.51 SELECT
auto_session
# 5 0x90C71B058D2DB3A7 31.6007 5.8% 1 31.6007 0.00 UPDATE
auto_content
# 6 0x3D2E33FA60277468 21.4177 3.9% 1 21.4177 0.00 SELECT
auto_modules auto_modules_menu auto_extensions
# 7 0xD0FA24E5DC60625E 17.5271 3.2% 2 8.7636 1.31 DELETE
auto_session
# 8 0xA541B3806C0609F9 11.5759 2.1% 2 5.7879 0.00 SELECT
auto_content auto_categories auto_users auto_content_frontpage
auto_content_rating

czyli jak dobrze widzę 77,1% na UPDATE, INSERT, SELECT i DELETE w tabeli auto_session - używanej do obsługi sesji..

W Global Configuration > System > Session Settings
Session Handler przełączyłem z Database na None i nic to nie dało
Session Lifetime mam 15

O co chodzi? Dlaczego? Gdzie szukać przyczyny?

Mam artykuł, który w Menadżerze ma dużą liczbę Hits na poziomie 36 710 a w Google Analitics 8 odsłon, to go wyłączyłem ale to też nic nie dało...
Pewnie znalazło by się jeszcze kilka innych, które Hits mają dziwnie duże ale nie wiem czy to dobry trop.

Co powinienem zrobić, co Wy byście zrobili? Jak to zoptymalizować?

Z góry dziękuję,
Rafał
Mateusz K.

Mateusz K. miszcz wwwujitsu

Temat: Joomla 3 i obciążenie bazy danych MySQL

"Kejszujesz" cokolwiek bądź to w samej J albo czymkolwiek zewnętrznym ?
Jomsocial swoje żre przy podglądzie wszystkiego ?

ps. brzmi jak komunikat nazwapl/homepl, choć przez kości czuję że to nie to, tylko zwykły standardzik.
Rafał D.

Rafał D. freelancer

Temat: Joomla 3 i obciążenie bazy danych MySQL

Keszuję narazie tylko w samej Joomla
Global configuration > System > Cache settings
Cache: On - Prograssive caching
Cache Handler: File
Cache time: 15

Plugin System - Cache mam zablokowany, a jak odblokuję dostaję błąd:
Warning: Missing argument 2 for JCacheControllerPage::store(), called in /public_html/plugins/system/cache/cache.php on line 110 and defined in /public_html/libraries/joomla/cache/controller/page.php on line 122"

Joomsocial wykorzystuję jedynie do galerii multimediów - filmów i zdjęć,

ps. Wojtku kości cię nie mylą ;)Ten post został edytowany przez Autora dnia 18.07.13 o godzinie 13:55
Mateusz K.

Mateusz K. miszcz wwwujitsu

Temat: Joomla 3 i obciążenie bazy danych MySQL

Rafał D.:
Keszuję narazie tylko w samej Joomla
Global configuration > System > Cache settings
Cache: On - Prograssive caching
Cache Handler: File
Cache time: 15

Cache: On -Progressive caching
Używasz progresywnego z pełną tego świadomością ? Pytanie całkowicie poważne.
Rafał D.:
Plugin System - Cache mam zablokowany, a jak odblokuję dostaję błąd:
Warning: Missing argument 2 for JCacheControllerPage::store(), called in /public_html/plugins/system/cache/cache.php on line 110 and defined in /public_html/libraries/joomla/cache/controller/page.php on line 122"

Aktualizuj własnoręcznie: http://joomlacode.org/gf/download/trackeritem/30957/82... albo wstrzymaj się do wydania poprawki zbiorczej.
Skoro jednak rzuciłeś się na dev 3.x, nie ma co czekać "na lepsze jutro".
Joomsocial wykorzystuję jedynie do galerii multimediów - filmów i zdjęć,

Lektura dla Ciebie: "Cache Control with htaccess - expires by type".
Na pewno nie zaszkodzi gdy multimediów na stronie i dodatków w J jest sporo.
ps. Wojtku kości cię nie mylą ;)
I tutaj leży niejeden developer pogrzebany. Rozważ emigrację, bo nie przeskoczysz max 64MB ramu przydzielonego dla php per konto. Przykro zobaczyć Fatal error: Out of memory (allocated ....... ) (tried to allocate ....
Musiałem się ostro napocić z optymalizacją jednego sklepu na nazwie żeby zaoszczędzić 4-6MB.
Przenigdy więcej (!) (konkurencji życzę takich case'ów) ;)

A komunikat mnie nie dziwi wcale. Fajny tekst mi się kiedyś trafił nt. nazwypl: słupki statystyk mają od tego, abym wiedział o ile przekraczam wszelkie limity ;)
Przem Past

Przem Past Od wszystkiego.
Wiele pomysłów,
wiele dziedzin
zaintereso...

Temat: Joomla 3 i obciążenie bazy danych MySQL

Wrzuć w htaccess kod ( o ile w testach wydajności strony podpowiada, że cache nie ma ustawionego optymalnego czasu expire:


# ----------------------------------------------------------------------
# Expires headers (for better cache control)
# ----------------------------------------------------------------------

# These are pretty far-future expires headers.
# They assume you control versioning with filename-based cache busting
# Additionally, consider that outdated proxies may miscache
# www.stevesouders.com/blog/2008/08/23/revving-filenames-dont-use-querystring/

# If you don't use filenames to version, lower the CSS and JS to something like
# "access plus 1 week".

<IfModule mod_expires.c>
ExpiresActive on

# Perhaps better to whitelist expires rules? Perhaps.
ExpiresDefault "access plus 1 month"

# cache.appcache needs re-requests in FF 3.6 (thanks Remy ~Introducing HTML5)
ExpiresByType text/cache-manifest "access plus 0 seconds"

# Your document html
ExpiresByType text/html "access plus 0 seconds"

# Data
ExpiresByType application/json "access plus 0 seconds"
ExpiresByType application/xml "access plus 0 seconds"
ExpiresByType text/xml "access plus 0 seconds"

# Feed
ExpiresByType application/atom+xml "access plus 1 hour"
ExpiresByType application/rss+xml "access plus 1 hour"

# Favicon (cannot be renamed)
ExpiresByType image/x-icon "access plus 1 week"

# Media: images, video, audio
ExpiresByType audio/ogg "access plus 1 month"
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType video/mp4 "access plus 1 month"
ExpiresByType video/ogg "access plus 1 month"
ExpiresByType video/webm "access plus 1 month"

# HTC files (css3pie)
ExpiresByType text/x-component "access plus 1 month"

# Webfonts
ExpiresByType application/vnd.ms-fontobject "access plus 1 month"
ExpiresByType application/x-font-ttf "access plus 1 month"
ExpiresByType application/x-font-woff "access plus 1 month"
ExpiresByType font/opentype "access plus 1 month"
ExpiresByType image/svg+xml "access plus 1 month"

# CSS and JavaScript
ExpiresByType application/javascript "access plus 1 year"
ExpiresByType text/css "access plus 1 year"

</IfModule>


U mnie po wrzuceniu strona pogoniła do przodu, ze hej. Obciążenie również spadło. Lepsze to niż system cache w Joomli

Następna dyskusja:

Przekroczenie liczby zapyta...




Wyślij zaproszenie do