11 саветаў, каб паскорыць Drupal Performance

  1. 1. Апошняя версія
  2. 2. сетку дастаўкі кантэнту
  3. 3. Выкарыстоўваць кэшаванне
  4. кэшаванне старонкі
  5. праглядаў Кэшаванне
  6. панэль Кэшаванне
  7. PHP Кэшаванне
  8. браўзэр Кэшаванне
  9. Gzip сціску
  10. Выдаліць радкі запытаў ад статычных рэсурсаў {.entry-TITLE}
  11. Аптымізацыя 4. Малюнак
  12. 5. Гультаяватыя Load Images
  13. 6. Памылкі 404
  14. 7. адключыць непатрэбныя модулі
  15. 9. Зваротны проксі-сервер
  16. 10. Дадатковы Tweaks
  17. рэзюмэ

Браян Джэксан

Абнаўленне ад 29 чэрвеня 2016

Абнаўленне ад 29 чэрвеня 2016

Drupal з'яўляецца адкрытым зыходным кодам CMS і ці структура, якая выкарыстоўваецца, па меншай меры, 2,2% усіх сайтаў у Інтэрнэце. Яно прыводзіць ўсе тыпы вэб-сайтаў, пачынаючы ад блогаў да карпаратыўных і ўрадавых сайтаў. У гэтым артыкуле мы абмяркуем парады аб тым, як паскорыць працу Drupal , каб гарантаваць , што Ваш вэб - сайт працягвае працаваць хутка, забяспечваючы добры вопыт для вашых наведвальнікаў.

Drupal першапачаткова быў выпушчаны ў 2001 годзе, за два гады да WordPress нават на рынку. З WordPress з'яўляецца настолькі папулярным, многія людзі пытаюцца, чаму хто-то выбраў бы Drupal над WordPress? Вось некалькі прычын:

  • Бяспека: Drupal мае праблемы з бяспекай на ўзроўні прадпрыемства і падае справаздачы бяспекі ў глыбіню. WordPress, як правіла, маюць больш ўбудоў з ўразлівасцямі, асабліва калі ўладальнік не абнаўляе іх.
  • Scaling: Drupal павінна была маштабавацца да тысяч старонак! WordPress першапачаткова была распрацавана як блог-платформа.
  • Магутная: Drupal была распрацавана з распрацоўшчыкамі ў выглядзе , і таму магчымасці дызайну бязмежныя, асабліва з яе модульнай канструкцыяй.

Мы вырашылі пайсці з платформай Drupal на аснове, паколькі ён з'яўляецца адкрытым зыходным кодам, мае дынамічны супольнасць распрацоўнікаў, і прапануе магутную і гнуткую платформу для стварэння інтэрнэт-супольнасцяў. Мітч каптуроў Арганізацыя Electronic Frontier Foundation

Drupal у цяперашні час выкарыстоўваецца на шматлікіх папулярных сайтах, такіх як:

  • Warner Brothers Records
  • Амхерст каледж
  • Digett
  • Навукова-папулярны
  • Symantec Connect
  • экзаменатар
  • эканаміст
  • белы дом
  • І многае іншае!

Згодна з W3Techs, Drupal у цяперашні час займае долю рынку 5% , Паставіўшы яго ў якасці трэцяга найбольш папулярных CMS, толькі з Joomla і WordPress наперадзе яго. Згодна з BuiltWith, 9% з лепшых 100000 сайтаў выкарыстоўваюць Drupal.

крыніца: BuiltWith

І ў адпаведнасці з рэгіянальнымі дадзенымі, Drupal шырока больш папулярная ў Злучаных Штатах і краінах Заходняй Еўропы.

крыніца: BuiltWith

Drupal па нумарах:

Згодна з Google Trends актыўнасць вакол Drupal даволі паслядоўная, магчыма, паказваючы невялікае зніжэнне на працягу апошніх некалькіх гадоў. Тым не менш, цікава паглядзець вялікае падзенне з Joomla, які мы можам выказаць здагадку, што гэта ў асноўным з-за WordPress.

Чаму вы павінны клапаціцца аб паскарэнні Drupal? Паколькі хуткасць вашага сайта значна ўплывае на трафік, пераходы, даходы, і нават SEO рэйтынгу! Вось статыстыка з тэматычнае даследаванне Radware зрабіў на час загрузкі старонкі.

  • Shopzilla ўбачыў павелічэнне даходу на 12% пасля паляпшэння сярэдняга часу загрузкі старонкі з 6 секунд да 1,2 секунд.
  • Google кажа , што яны губляюць 20% свайго трафіку за кожныя 100 мілісекунд ён прымае старонку для загрузкі. Хуткасць мае значэнне. Google таксама ўключае ў сябе час загрузкі старонкі ў ранжыраванні пошуку вашага сайта.
  • Yahoo павелічэнне трафіку на 9% на кожны 400мс паляпшэння.
  • Mozilla атрымалі 60 мільёнаў больш Firefox загрузак у год, робячы іх старонкі 2.2 секунды хутчэй.
  • Amazon павялічыў выручку на 1% на кожныя 100 мс паляпшэння.

Выконвайце гэтым саветам ніжэй пра тое, як паскорыць Drupal і захаваць гэта працуе хутка, каб забяспечыць вяртанне наведвальнікаў. Мы выкарыстоўваем Drupal 7.41. Звярніце ўвагу, што Drupal 8 выпускаецца 19 лістапада. Некаторыя змены ўключаюць у сябе падзенне асноўнай падтрымкі для IE 6,7, і 8 і даданне падтрымкі PHP7.

1. Апошняя версія

Гэта вельмі важна, каб вы заўсёды запусціўшы Апошняя версія Drupal як абнаўлення звычайна змяшчае выпраўленне памылак і паляпшэнне прадукцыйнасці. Вы заўсёды хочаце захаваць ядро, модуль, і ўклад тэмы абнаўляецца.

  1. Для запуску абнаўлення, перайдзіце ў раздзел «Справаздачы» → «Даступныя абнаўлення.»
  2. Затым вы можаце націснуць на «Праверка ўручную» для сканавання дадатковых абнаўленняў.

2. сетку дастаўкі кантэнту

рэалізацыя Сетка дастаўкі кантэнту (CDN) з Drupal гэта хуткі і просты спосаб, каб адразу ўбачыць паменшаны час загрузкі для вашага сайта. Робячы гэта, вы пераканайцеся, што вы служыце вашы актывы (выявы прадукту, JavaScript, CSS) з некалькіх месцаў па ўсім свеце, такім чынам яны дастаўляюцца хутчэй вашых наведвальнікаў і памяншэння затрымкі.

KeyCDN мае просты 8 крок інтэграцыя з Drupal у якой вы можаце прытрымлівацца.

3. Выкарыстоўваць кэшаванне

Drupal, у адрозненне ад многіх іншых платформаў CMS на самай справе мае некаторыя параметры кэшавання, убудаваныя ў ядро. Гэта, верагодна, самы просты спосаб паскорыць працу Drupal на вашым сайце. Па змаўчанні гэта выключана.

кэшаванне старонкі

  1. Каб уключыць, перайдзіце ў раздзел «Канфігурацыя» → «Развіццё» → «Performance».
  2. Ўключыць «старонкі кэша для ананімных карыстальнікаў», а таксама «блокі кэша.» Вы можаце выбраць значэнне часу для мінімальнага тэрміну службы кэша і тэрміну дзеяння кэшаваных старонак.
  3. Націсніце на кнопку «Захаваць налады».

Калі вы хочаце ведаць аб розных паміж мінімальнай жыцця кэша і тэрмін дзеяння кэшаваных старонак ёсць даволі добры тлумачэнне тут ,

Аднак гэтак жа, як і любы іншы CMS, у камплекце параметры кэшавання, як правіла, не гэтак эфектыўныя. Вось некаторыя іншыя параметры кэшавання таксама паглядзець.

Вось поўны спіс кэшаванне модулі якія робяць Drupal маштаб.

праглядаў Кэшаванне

модуль праглядаў Верагодна, адзін з самых папулярных модуляў на Drupal. Калі ён у вас усталяваны, вы можаце таксама ўключыць кэшаванне на ім.

  1. Каб уключыць, перайдзіце ў раздзел «Адміністраванне» → «Структура» → «Агляд».
  2. Націсніце кнопку «Змяніць» на акне вы хочаце ўключыць кэшавання.
  3. Разгарніце «Дадаткова акно.»
  4. Выберыце «Час асновы» і націсніце на кнопку «Ужыць (усе дысплеі).»
  5. Выберыце час, жаданне і націсніце на кнопку «Ужыць (усе дысплеі).»

Вось некаторыя іншыя модулі, якія можна выкарыстоўваць для кэшавання праглядаў:

панэль Кэшаванне

Іншы папулярны модуль людзі звычайна выкарыстоўваюць у Drupal з'яўляецца модуль панэлі , Вы сапраўды можаце ўключыць кэшаванне на кожнай асобнай панэлі.

  1. Каб уключыць, перайдзіце ў раздзел «Адміністраванне» → «Структура» → «Старонкі».
  2. Затым перайдзіце ў раздзел «Варыянты» → «Змесціва» → «Кэшаванне» і націсніце на кнопку «Змяніць».
  3. Выберыце «Просты кэш» і націсніце кнопку «Далей».
  4. Вы можаце выбраць працягласць часу кэшавання і націсніце на кнопку «Захаваць».

PHP Кэшаванне

Alternative PHP Cache (APC) быў вельмі добра вядомы, каб дапамагчы павялічыць хуткасць Drupal ўсталёўвае.

браўзэр Кэшаванне

Іншая форма кэшавання вы можаце выкарыстоўваць гэта кэш браўзэра. Глядзіце наступныя фрагменты, якія можна дадаць да вашага сервера, напрыклад, якое забяспечвае сціск Gzip і даданне мінаюць загалоўкі.

Gzip сціску

Gzip сціск вэб-старонак і табліцы стыляў на ўзроўні сервера перад адпраўкай іх у браўзэры. Калі вы працуеце на Apache вы можаце ўключыць сціск, дадаўшы наступнае ў файл .htaccess.

<IfModule mod_deflate.c> # Сціснуць HTML, CSS, JavaScript, Text, XML і шрыфты AddOutputFilterByType DEFLATE дадатак / JavaScript AddOutputFilterByType DEFLATE прыкладання / RSS + XML AddOutputFilterByType DEFLATE дадатак / vnd.ms-fontobject прыкладанне AddOutputFilterByType DEFLATE / х-шрыфт AddOutputFilterByType DEFLATE прыкладанне / х-шрыфт OpenType AddOutputFilterByType DEFLATE ужыванне / х-шрыфт-OTF прыкладанне AddOutputFilterByType DEFLATE / х-шрыфт TrueType прыкладанне AddOutputFilterByType DEFLATE / х-шрыфт-TTF AddOutputFilterByType DEFLATE ужыванне / х-Javascript AddOutputFilterByType DEFLATE дадатак / XHTML + XML AddOutputFilterByType DEFLATE прыкладанне / XML AddOutputFilterByType DEFLATE шрыфт / OpenType AddOutputFilterByType DEFLATE шрыфт / OTF AddOutputFilterByType DEFLATE шрыфт / TTF AddOutputFilterByType DEFLATE малюнак / SVG + XML AddOutputFilterByType DEFLATE малюнак / х-значок AddOutputFilterByType DEFLATE тэкст / CSS AddOutputFilterByType DEFLATE тэкст / html AddOutputFilterByType DEFLATE тэкст / JavaScript ня AddOutputFilterByType DEFLATE тэкст / звычайны тэкст AddOutputFilterByType DEFLATE / XML # Выдаліць браўзэр памылак (патрабуецца толькі для вельмі старых браўзэраў) BrowserMatch ^ Mozilla / 4 GZIP толькі-тэкст / html BrowserMatch ^ Mozilla / 4 \ .0 [678] ня-GZIP BrowserMatch \ bMSIE няма! -GZIP! GZIP-толькі-тэкст / html загаловак Append Варах User-Agent </ IfModule>

Калі вы працуеце на Nginx Вы можаце ўключыць сціск, дадаўшы наступнае ў файл nginx.conf.

GZIP на; gzip_comp_level 2; gzip_http_version 1,0; gzip_proxied любой; gzip_min_length 1100; gzip_buffers 16 8k; gzip_types тэкст / звычайны тэкст / html тэкст / CSS ужыванне / х-Javascript тэкст / XML дадатку / XML дадатку / XML + тэкст RSS / JavaScript; gzip_disable "MSIE [1-6]. (* SV1?!.)"; gzip_vary на;

Выдаленыя загалоўкі паведамляюць браўзэр, ці павінны яны запытаць файл з сервера або захапіць яго з кэша браўзэра.

<IfModule mod_expires.c> ExpiresActive На ########################################## ## ## Дадаць па змаўчанні загаловак Expires ## http://developer.yahoo.com/performance/rules.html#expires <FilesMatch «\ (ICO |. PDF | FLV | JPG | JPEG | PNG | GIF | JS | CSS | швейцарскія франкі) $ "> ExpiresDefault" доступ плюс 1 год "</ FilesMatch> </ IfModule>

Выдаліць радкі запытаў ад статычных рэсурсаў {.entry-TITLE}

Яна таксама можа быць карысна для выдалення радкі запыту з вашых статычных рэсурсаў, паколькі гэта можа выклікаць праблемы кэшавання з некаторымі проксі-кэшаў і КДС. Для выдалення радкі запыту з CSS імёнаў файлаў ўнутры Drupal, наступны фрагмент кода можа быць дададзеная ў файл template.php. Толькі не забудзьцеся змяніць MyTheme з імем тэмы.

&lt;? PHP / ** * Рэалізуе template_process_html (). * / // Выдаленне радкі запытаў з CSS імёнаў файлаў (CacheBuster) функцыя MYTHEME_process_html (& $ зменных) {$ зменных [ 'стылі'] = preg_replace ( '/ \. CSS \? [^ "] + /', 'CSS' , $ зменных [ 'стылі']);}>?

На шчасце, калі вы карыстаецеся KeyCDN, гэта не трэба, як у нас прыкметы называецца «Ігнараваць радкі запыту», які можна ўключыць у панэлі кіравання. Гэта функцыя ігнаруе радкі запыту і кажа кэшу адказаць з кэшаваць адказам , нават калі радок запыту адрозніваецца.

Прачытайце больш глыбокі пост на выдаленне радкі запыту ,

Аптымізацыя 4. Малюнак

Мы гаварылі пра без страт сціску выявы у папярэднім пасце, у сярэднім 56 працэнтаў ад вагі старонкі вэб - сайта складаецца з малюнкаў. Так аптымізуюць выявы могуць значна паменшыць ваш час загрузкі старонкі і тое, што мы заўсёды рэкамендую рабіць, калі гаворка ідзе аб прадукцыйнасці Drupal.

У Drupal 6 і 7 вы можаце змяніць ступень сціску на JPEGs. Па змаўчанні ў Drupal 7 ён усталяваны на 75%.

  1. Для змены, перайдзіце ў раздзел «Канфігурацыя» → «інструментар малюнка.»
  2. Вы можаце змяніць колькасць% і націсніце на кнопку «Захаваць налады».

Там знаходзяцца таксама аптымізацыя Drupal выявы модуляў даступныя такія, як малюнак Аптымізаваць і ImageMagick ,

5. Гультаяватыя Load Images

Гультаяватыя вобразы загрузкі могуць лёгка значна павялічыць час загрузкі старонкі, забяспечваючы малюнак будзе загружаць толькі калі яна бачная ў акне браўзэра. Самы папулярны модуль Drupal для гэтага ў наш час « малюнак Lazyloader »З крыху больш за 18 000 загрузак.

Мы таксама рэкамендуем выкарыстоўваць модуль як « Image Resize Filter »Так што вашыя выявы маштабуецца ўніз, калі вы загружаеце іх, і вы не належыце на CSS, каб маштабаваць іх уніз.

6. Памылкі 404

Замест таго каб выкарыстоўваць модуль для праверкі памылак 404, мы рэкамендуем час ад часу працуе ваш сайт праз знешні сэрвіс, такія як « Інтэрнэт Разбітае Link Checker »Ці інструмент, як Якія крычаць Frog , Гэта гарантуе, што вы не марнаваць якія-небудзь з рэсурсаў вашага сервера на гэтай задачы.

Акрамя таго, Drupal мае дарагія памылкі 404. На сярэднім участку з сярэдняй нагрузкай модуля, вы можаце глядзець на 60-100MB памяці спажываецца на сэрвэры, каб даставіць 404. Drupal Fast 404 модуль фіксуе гэта і, як правіла, можа даставіць 404 памылкі пры выкарыстанні менш чым 1 Мбайт памяці.

7. адключыць непатрэбныя модулі

Гэтак жа, як і з любой платформы CMS і ўбудоў, кожны модуль у Drupal мае накладных расходаў прыкладаецца. Таму рэкамендуецца не запускаць больш за 50 модуляў. Вось некаторыя модулі можна адключыць, калі вам не патрэбна функцыянальнасць для вашага сайта.

  • Сродкі распрацоўкі кіраванне
  • Devel
  • Доступ Devel вузел
  • поле UI
  • правілы UI
  • праглядаў UI
  • модуль фільтра
  • Блог
  • форум
  • таксанамія
  • пошук
  • дапамогу
  • самы кароткі шлях
  • прыборная панэль
  • Вядзенне базы дадзеных
  • колер
  • панэль інструментаў
  • Tracker
  • Статыстыка (гэты модуль запісвае ў сваю базу дадзеных на кожнай старонцы. Калі вы выкарыстоўваеце Google Analytics вы , верагодна , не патрэбныя.)
  • Update Manager (калі ў вас ёсць Паннаў падштурхоўваць міграцыі асяроддзя няма ніякіх прычын , вам трэба абнаўленне мэнэджара апытання Drupal.org ўвесь час.)

Аб'яднаўшы свой CSS і файлы JavaScript вы можаце палепшыць прадукцыйнасць інтэрфейс і час загрузкі, а ваш браўзэр не павінен атрымліваць столькі файлаў, і памяншае агульная колькасць HTTP-запытаў вырабляецца.

  1. Каб уключыць, перайдзіце ў раздзел «Канфігурацыя» → «Развіццё» → «Performance».
  2. Ўключыць «Сукупныя і сціскаць CSS-файлы» і «Агрэгатныя JavaScript файлы.»
  3. Націсніце на кнопку «Захаваць налады».

Заўвага: Гэта ставіцца як да сістэмы і без зарэгістраваных карыстальнікаў.

Для больш прасунутых CSS і агрэгацыі JavaScript, мы рэкамендуем правяраць па-за « Advanced CSS / JS Aggregation »Модуль.

9. Зваротны проксі-сервер

Можна размясціць яшчэ адно прыкладанне перад вашымі, якія будуць служыць кэшаваныя копіі вашых вэб-старонак. Гэта называецца «зваротны проксі-сервер кэшавання» або часам таксама вядомы як «HTTP акселератар». Лак выкарыстоўваецца для высокага трафіку вэб-сайтаў, такіх як Wikipedia, Facebook, Twitter і г.д. Ёсць два папулярных модуляў Drupal, калі гаворка заходзіць пра выкарыстанне Varnish.

10. Дадатковы Tweaks

11. Абярыце Хуткі вэб-хостынг

І апошняе, але не ў апошнюю чаргу, выбіраючы надзейны і хуткі вэб-хостынгу можа быць адзін з самых важных рашэнняў, вы будзеце рабіць, калі спрабуюць палепшыць прадукцыйнасць Drupal. Мы рэкамендуем трымацца далей ад таннага хостынгу, паколькі яны, як правіла, загрувашчваць свае сервера, і вы будзеце ў канчатковы выніку сумеснага выкарыстання рэсурсаў паміж сотнямі людзей. Мы рэкамендуем ісці з VPS, як DigitalOcean , Linode або Vultr , Прычына ў тым, што вы будзеце цалкам кантраляваць свае рэсурсы. І калі вы не гэтак тэхнічна прасунутыя ці не хочаце кіраваць серверамі з дапамогай інтэрфейсу каманднага радка, ServerPilot гэта выдатны кантроль Альтэрнатыва панэлі, якая працуе з Drupal і правайдэрамі VPS, згаданых вышэй.

рэзюмэ

Як вы можаце бачыць, што ёсць шмат спосабаў вы можаце паскорыць працу Drupal, вы проста павінны ведаць, дзе шукаць. Ад рэалізацыі CDN для кэшавання, аптымізацыі малюнкаў, лянівых малюнкаў загрузкі, фіксуючы памылкі 404, агрэгавання CSS / JS файлаў, і адключэнне непатрэбных модуляў.

У вас ёсць яшчэ адзін спосаб паскорыць Drupal, якія мы прапусцілі? Мы хацелі б пачуць пра гэта ніжэй у каментарах.

З WordPress з'яўляецца настолькі папулярным, многія людзі пытаюцца, чаму хто-то выбраў бы Drupal над WordPress?
Чаму вы павінны клапаціцца аб паскарэнні Drupal?
SV1?
Lt;?
У вас ёсць яшчэ адзін спосаб паскорыць Drupal, якія мы прапусцілі?