Většina CMS nejsou v dnešní době optimalizované pro větší návštěvnost. Rychlost načítání prezentace ovlivňuje návštěvníky a míru opouštění webových stránek. Než se pustíme do podrobností jednotlivých technik a tipů pro zrychlení Drupalu, je třeba pochopit, co zpomaluje Drupal:
- Databázové dotazy
- Vkládání CSS a Javascript
- Obrázky, které jsou načteny na vaší straně
- Načítání nechtěných modulů
Nyní se podíváme na to, co můžeme udělat pro urychlení a optimalizaci rychlosti.
Změna konfigurace
1) Pro prvotní rychlé zvýšení výkonu běžte na Administrace / Konfigurace / Výkon
Zde si můžete přečíst volby stránky cache, optimalizace CSS a JavaScriptu. Standardní optimalizace a cachování databáze může být dostačující pro některé stránek.
Zaškrtněte políčko Cachování pro anonymní uživatele, Cache bloky, komprimovat mezipaměť, CSS a JavaSkriptové soubory.
Vypnutí modulů
- Vypněte modul update manager
- Vypněte všechny devel moduly, pokud jste je instalovali
- Vypněte overlay modul
- Vypněte modul toolbar, stáhněte si a nainstalujte modul Administration menu.
Stejně tak byste měli vypnout a odebrat všechny moduly, které nepoužíváte, protože rychlé načítání stránek je mnohem důležitější, než-li přidávání dalších funkcí a zpomalování webu.
Boost modul
Povolte Boost modul. Pro anonymní uživatele cachuje vaše stránky jako HTML soubory, takže váš webserver může sloužit návštěvníkům mnohem rychleji a nebude se muset přistupovat do databáze. Pokud je většina trafficu je od anonymních uživatelů, pak je modul Boost právě pro vás. Boost vám pomůže realizovat výrazné zvýšení výkonu pro osobní blogy, prezentace malých podniků, firemních webů a dalších portálů. Pro Webhosting je to nejlepší volba, pokud jde o zlepšení výkonnosti.
Pro statistiky lze využít google analytics modulu.
Pokročilé nastavení výkonu
Přidání pravidla do souboru .htaccess
Pokud používáte pravidlo mod_deflate, nemusíte nutně muset zkontrolovat kompresi mezipaměti stránky na stránce nastavení výkonu. Stačí tedy přidat následující kód do souboru .htaccess:
Midwestern Mac-recommended additions
# Use mod_deflate to gzip components
AddOutputFilterByType DEFLATE text/css application/x-javascript application/javascript text/plain text/html text/xml application/xml
InnoDB
Pokud používáte MediaWiki a gallery2 spolu s innodb databází, musíte provést optimalizaci a to nejen MyISAM, nebo tyto produkty budou běžet daleko pomaleji, než by měli.
Stačí editovat soubor /etc/my.cnf a přidat následující kód hned pod sekci [mysqld]:
innodb specific
# innodb_buffer_pool_size 50% of memory on 5GB+ server. Set it to be larger than your data size or 500M on 4G box.
innodb_buffer_pool_size=20M
# innodb_log_file_size This depends on your recovery speed needs but 256M seems to be good performance
# innodb_log_buffer_size=4M 4M is good for most large servers
innodb_log_buffer_size = 2M
# innodb_flush_log_at_trx_commit=2 (1=flush log to disk every transaction, 2=flush to OS Cache, 0=don’t flush)
innodb_flush_log_at_trx_commit = 2