SlideShare a Scribd company logo
1 of 12
Optimising PyroCMS for faster performance
PyroCMS!
!
PyroCMS is an incredibly powerful yet user friendly CMS
built on the CodeIgniter PHP framework*.
!
It’s both client & developer friendly and runs
very well on a default install.
!
The following slides will offer some tips on
performance tweaking the CMS for best results.
* Soon to be replaced by Laravel in the forthcoming PyroCMS release…any day now!
streams:streamName cache="1440" cache_type="query" !
!
// Do stuff here!
!
/streams:streamName
Caching queries within streams where possible
!
The following stream data is cached for a period of 1
day (1440 minutes / 60):
streams:streamName disable="created|updated|created_by" !
!
// Do stuff here!
!
/streams:streamName
Disable non-essential fields retrieved in your streams
!
The following stream disables the created, updated &
created_by fields from being retrieved:
Disabling the installer check
!
After successful installation disable the following check
in the hooks.php file (/system/cms/config):
$hook['pre_controller'][] = array(!
! 'function' => 'check_installed',!
! 'filename' => 'check_installed.php',!
! 'filepath' => 'hooks'!
);
SetEnv PYRO_ENV production
Set the Pyro environment
!
Within your htaccess file on your remote server set the
PYRO_ENV environment configuration to production:
Compress your website assets
!
If you’re running/using an Apache web server configure
your htaccess file to enable gzip compression of assets
such as the following:
!
1. CSS
2. JavaScript
3. Images
4. JSON/XML
5. Web fonts (I.e. TTF, OTF etc)
Enable website asset caching
!
Again, if you’re Apache server based, you can configure
your htaccess file to enable caching of website assets.
!
In the following snippet we cache certain asset types for
a period of 1 week (60s * 60m * 24h * 7d = 604800):
<IfModule mod_headers.c> !
<FilesMatch ".(ico|pdf|flv|mp4|ogg|webm|jpg|jpeg|png|
gif|js|css|swf|eot|font.css|otf|ttc|ttf|woff|svg|zip)$"> !
Header set Cache-Control "max-age=604800, public" !
</FilesMatch>!
</IfModule>
Optimise your CSS and JS files
!
2 words: minify & concatenate.
!
Wherever possible reduce the size of your CSS & JS files
through minification and concatenation to reduce excess
HTTP requests.
!
PyroCMS offers the Asset plugin which you can use to
help automate the above process (if you’re not using a
front-end workflow automation tool such as Grunt or Gulp).
Manage your website images
!
Optimise the size of your website images with tools
like OptiPNG, PNGQuant, Gifsicle, JPEGtran & SVGO.
!
Workflow tools such as Grunt & Gulp offer a rich plug-in
system to help with this (amongst other tasks).
!
Where possible consider using CSS Sprites to reduce
HTTP requests for images.
Manage your file references
!
Prevent blocking of your web page loading by moving
references to your external JavaScript files to the bottom
of the page.
!
This can be combined with use of PyroCMS’s Asset
plugin to concatenate/minify JavaScript (as well as CSS)
files.
Resources
!
https://www.pyrocms.com
!
http://docs.pyrocms.com/2.2/manual/guides/streams
!
http://docs.pyrocms.com/2.2/manual/plugins/asset
!
http://docs.pyrocms.com/2.1/manual/plugins/streams/caching-and-optimization
!
http://gulpjs.com
!
http://gruntjs.com

More Related Content

What's hot

Performance Tuning - MuraCon 2012
Performance Tuning - MuraCon 2012Performance Tuning - MuraCon 2012
Performance Tuning - MuraCon 2012eballisty
 
Building Scalable Web Apps - LVL.UP KL
Building Scalable Web Apps - LVL.UP KLBuilding Scalable Web Apps - LVL.UP KL
Building Scalable Web Apps - LVL.UP KLGareth Davies
 
WordPress.org & Optimizing Security for your WordPress sites
WordPress.org & Optimizing Security for your WordPress sitesWordPress.org & Optimizing Security for your WordPress sites
WordPress.org & Optimizing Security for your WordPress sitesGovLoop
 
High Performance WordPress - WordCamp Jerusalem 2010
High Performance WordPress - WordCamp Jerusalem 2010High Performance WordPress - WordCamp Jerusalem 2010
High Performance WordPress - WordCamp Jerusalem 2010Barry Abrahamson
 
A crash course in scaling wordpress
A crash course inscaling wordpress A crash course inscaling wordpress
A crash course in scaling wordpress GovLoop
 
High Performance Web Sites
High Performance Web SitesHigh Performance Web Sites
High Performance Web SitesRavi Raj
 
WordPress At Scale. WordCamp Dhaka 2019
WordPress At Scale. WordCamp Dhaka 2019WordPress At Scale. WordCamp Dhaka 2019
WordPress At Scale. WordCamp Dhaka 2019Anam Ahmed
 
How to replace my sql with mariadb in cpanel
How to replace my sql with mariadb in cpanelHow to replace my sql with mariadb in cpanel
How to replace my sql with mariadb in cpanelhighclonoidsoftec
 
High Performance WordPress II
High Performance WordPress IIHigh Performance WordPress II
High Performance WordPress IIBarry Abrahamson
 
Nuxt로 사내서비스 구현하면서 얻은 경험 공유
Nuxt로 사내서비스 구현하면서 얻은 경험 공유Nuxt로 사내서비스 구현하면서 얻은 경험 공유
Nuxt로 사내서비스 구현하면서 얻은 경험 공유민환 조
 
Introduction of webpack 4
Introduction of webpack 4Introduction of webpack 4
Introduction of webpack 4Vijay Shukla
 
Setting up a local WordPress Environment
Setting up a local WordPress EnvironmentSetting up a local WordPress Environment
Setting up a local WordPress EnvironmentChris La Nauze
 
High Performance WordPress
High Performance WordPressHigh Performance WordPress
High Performance WordPressBarry Abrahamson
 
Wordpress optimization
Wordpress optimizationWordpress optimization
Wordpress optimizationAlmog Baku
 
ServerBeach and WordPress BlogWorldExpo 2007
ServerBeach and WordPress BlogWorldExpo 2007ServerBeach and WordPress BlogWorldExpo 2007
ServerBeach and WordPress BlogWorldExpo 2007Barry Abrahamson
 

What's hot (17)

Performance Tuning - MuraCon 2012
Performance Tuning - MuraCon 2012Performance Tuning - MuraCon 2012
Performance Tuning - MuraCon 2012
 
Building Scalable Web Apps - LVL.UP KL
Building Scalable Web Apps - LVL.UP KLBuilding Scalable Web Apps - LVL.UP KL
Building Scalable Web Apps - LVL.UP KL
 
WordPress.org & Optimizing Security for your WordPress sites
WordPress.org & Optimizing Security for your WordPress sitesWordPress.org & Optimizing Security for your WordPress sites
WordPress.org & Optimizing Security for your WordPress sites
 
High Performance WordPress - WordCamp Jerusalem 2010
High Performance WordPress - WordCamp Jerusalem 2010High Performance WordPress - WordCamp Jerusalem 2010
High Performance WordPress - WordCamp Jerusalem 2010
 
A crash course in scaling wordpress
A crash course inscaling wordpress A crash course inscaling wordpress
A crash course in scaling wordpress
 
High Performance Web Sites
High Performance Web SitesHigh Performance Web Sites
High Performance Web Sites
 
WordPress At Scale. WordCamp Dhaka 2019
WordPress At Scale. WordCamp Dhaka 2019WordPress At Scale. WordCamp Dhaka 2019
WordPress At Scale. WordCamp Dhaka 2019
 
How to replace my sql with mariadb in cpanel
How to replace my sql with mariadb in cpanelHow to replace my sql with mariadb in cpanel
How to replace my sql with mariadb in cpanel
 
High Performance WordPress II
High Performance WordPress IIHigh Performance WordPress II
High Performance WordPress II
 
Optimize
OptimizeOptimize
Optimize
 
Nuxt로 사내서비스 구현하면서 얻은 경험 공유
Nuxt로 사내서비스 구현하면서 얻은 경험 공유Nuxt로 사내서비스 구현하면서 얻은 경험 공유
Nuxt로 사내서비스 구현하면서 얻은 경험 공유
 
Introduction of webpack 4
Introduction of webpack 4Introduction of webpack 4
Introduction of webpack 4
 
Svcc
SvccSvcc
Svcc
 
Setting up a local WordPress Environment
Setting up a local WordPress EnvironmentSetting up a local WordPress Environment
Setting up a local WordPress Environment
 
High Performance WordPress
High Performance WordPressHigh Performance WordPress
High Performance WordPress
 
Wordpress optimization
Wordpress optimizationWordpress optimization
Wordpress optimization
 
ServerBeach and WordPress BlogWorldExpo 2007
ServerBeach and WordPress BlogWorldExpo 2007ServerBeach and WordPress BlogWorldExpo 2007
ServerBeach and WordPress BlogWorldExpo 2007
 

Viewers also liked

CICON2010: Phil Sturgeon - Running an Open-Source CodeIgniter project
CICON2010: Phil Sturgeon - Running an Open-Source CodeIgniter projectCICON2010: Phil Sturgeon - Running an Open-Source CodeIgniter project
CICON2010: Phil Sturgeon - Running an Open-Source CodeIgniter projectCodeIgniter Conference
 
Anthony Piggott - Curriculum Vitae (LinkedIn)
Anthony Piggott - Curriculum Vitae (LinkedIn)Anthony Piggott - Curriculum Vitae (LinkedIn)
Anthony Piggott - Curriculum Vitae (LinkedIn)Anthony Piggott
 
Wroclaw agglomeration sector analyses food sector
Wroclaw agglomeration sector analyses   food sectorWroclaw agglomeration sector analyses   food sector
Wroclaw agglomeration sector analyses food sectorInvest in Wroclaw
 
Omkar (9764126682)
Omkar (9764126682)Omkar (9764126682)
Omkar (9764126682)omkar shelar
 
Wroclaw agglomeration sector analyses mechanical engineering
Wroclaw agglomeration sector analyses   mechanical engineeringWroclaw agglomeration sector analyses   mechanical engineering
Wroclaw agglomeration sector analyses mechanical engineeringInvest in Wroclaw
 
FRANK BALLESTERO Resume 3-5-2015
FRANK BALLESTERO Resume 3-5-2015FRANK BALLESTERO Resume 3-5-2015
FRANK BALLESTERO Resume 3-5-2015Frank Ballestero
 
Morrell Presentation Two CHP 9
Morrell Presentation Two CHP 9Morrell Presentation Two CHP 9
Morrell Presentation Two CHP 9Emorrell
 
West Africa GRI 2016 Advance Brochure
West Africa GRI 2016 Advance BrochureWest Africa GRI 2016 Advance Brochure
West Africa GRI 2016 Advance BrochureAndreas Schonning
 
Alliance partner directory recommendations
Alliance partner directory recommendationsAlliance partner directory recommendations
Alliance partner directory recommendationsRoberto Isernia
 
Meredith Herald ConstitutionFinal (1)
Meredith Herald ConstitutionFinal (1)Meredith Herald ConstitutionFinal (1)
Meredith Herald ConstitutionFinal (1)Jazmin Mendoza Sosa
 
Time or Attention as a currency (aCPM)-RicardoCollison
Time or Attention as a currency (aCPM)-RicardoCollisonTime or Attention as a currency (aCPM)-RicardoCollison
Time or Attention as a currency (aCPM)-RicardoCollisonRicardo Collison
 
Preparation of wps for stainless steel
Preparation of wps for stainless steelPreparation of wps for stainless steel
Preparation of wps for stainless steelsantasatana
 

Viewers also liked (20)

CICON2010: Phil Sturgeon - Running an Open-Source CodeIgniter project
CICON2010: Phil Sturgeon - Running an Open-Source CodeIgniter projectCICON2010: Phil Sturgeon - Running an Open-Source CodeIgniter project
CICON2010: Phil Sturgeon - Running an Open-Source CodeIgniter project
 
Anthony Piggott - Curriculum Vitae (LinkedIn)
Anthony Piggott - Curriculum Vitae (LinkedIn)Anthony Piggott - Curriculum Vitae (LinkedIn)
Anthony Piggott - Curriculum Vitae (LinkedIn)
 
AGENTES TERATOGENICOS
AGENTES TERATOGENICOSAGENTES TERATOGENICOS
AGENTES TERATOGENICOS
 
Wroclaw agglomeration sector analyses food sector
Wroclaw agglomeration sector analyses   food sectorWroclaw agglomeration sector analyses   food sector
Wroclaw agglomeration sector analyses food sector
 
APARATO DIGESTIVO
APARATO DIGESTIVOAPARATO DIGESTIVO
APARATO DIGESTIVO
 
Omkar (9764126682)
Omkar (9764126682)Omkar (9764126682)
Omkar (9764126682)
 
Isabel gallery
Isabel galleryIsabel gallery
Isabel gallery
 
Wroclaw agglomeration sector analyses mechanical engineering
Wroclaw agglomeration sector analyses   mechanical engineeringWroclaw agglomeration sector analyses   mechanical engineering
Wroclaw agglomeration sector analyses mechanical engineering
 
FRANK BALLESTERO Resume 3-5-2015
FRANK BALLESTERO Resume 3-5-2015FRANK BALLESTERO Resume 3-5-2015
FRANK BALLESTERO Resume 3-5-2015
 
Morrell Presentation Two CHP 9
Morrell Presentation Two CHP 9Morrell Presentation Two CHP 9
Morrell Presentation Two CHP 9
 
Katalogru042015
Katalogru042015Katalogru042015
Katalogru042015
 
West Africa GRI 2016 Advance Brochure
West Africa GRI 2016 Advance BrochureWest Africa GRI 2016 Advance Brochure
West Africa GRI 2016 Advance Brochure
 
Asia GRI 2015 Brochure
Asia GRI 2015  BrochureAsia GRI 2015  Brochure
Asia GRI 2015 Brochure
 
Alliance partner directory recommendations
Alliance partner directory recommendationsAlliance partner directory recommendations
Alliance partner directory recommendations
 
Meredith Herald ConstitutionFinal (1)
Meredith Herald ConstitutionFinal (1)Meredith Herald ConstitutionFinal (1)
Meredith Herald ConstitutionFinal (1)
 
Lo8
Lo8Lo8
Lo8
 
Time or Attention as a currency (aCPM)-RicardoCollison
Time or Attention as a currency (aCPM)-RicardoCollisonTime or Attention as a currency (aCPM)-RicardoCollison
Time or Attention as a currency (aCPM)-RicardoCollison
 
Preparation of wps for stainless steel
Preparation of wps for stainless steelPreparation of wps for stainless steel
Preparation of wps for stainless steel
 
Isabel gallery
Isabel galleryIsabel gallery
Isabel gallery
 
Untitled Presentation
Untitled PresentationUntitled Presentation
Untitled Presentation
 

Similar to Optimising PyroCMS for speed and performance boosts

Varnish and Drupal- Accelerating Website Performance and Flexibility with Var...
Varnish and Drupal- Accelerating Website Performance and Flexibility with Var...Varnish and Drupal- Accelerating Website Performance and Flexibility with Var...
Varnish and Drupal- Accelerating Website Performance and Flexibility with Var...Acquia
 
Joomla! Performance on Steroids
Joomla! Performance on SteroidsJoomla! Performance on Steroids
Joomla! Performance on SteroidsSiteGround.com
 
Web Speed And Scalability
Web Speed And ScalabilityWeb Speed And Scalability
Web Speed And ScalabilityJason Ragsdale
 
Magento Performance Optimization 101
Magento Performance Optimization 101Magento Performance Optimization 101
Magento Performance Optimization 101Angus Li
 
Caching objects-in-memory
Caching objects-in-memoryCaching objects-in-memory
Caching objects-in-memoryMauro Cassani
 
How to cache your static resources
How to cache your static resourcesHow to cache your static resources
How to cache your static resourcesWesley Smits
 
Drupal performance and scalability
Drupal performance and scalabilityDrupal performance and scalability
Drupal performance and scalabilityTwinbit
 
Apache Traffic Server
Apache Traffic ServerApache Traffic Server
Apache Traffic Serversupertom
 
Drupal performance optimization Best Practices
Drupal performance optimization Best PracticesDrupal performance optimization Best Practices
Drupal performance optimization Best PracticesRatnesh kumar, CSM
 
SaltConf14 - Ben Cane - Using SaltStack in High Availability Environments
SaltConf14 - Ben Cane - Using SaltStack in High Availability EnvironmentsSaltConf14 - Ben Cane - Using SaltStack in High Availability Environments
SaltConf14 - Ben Cane - Using SaltStack in High Availability EnvironmentsSaltStack
 
Developing High Performance and Scalable ColdFusion Application Using Terraco...
Developing High Performance and Scalable ColdFusion Application Using Terraco...Developing High Performance and Scalable ColdFusion Application Using Terraco...
Developing High Performance and Scalable ColdFusion Application Using Terraco...ColdFusionConference
 
Developing High Performance and Scalable ColdFusion Applications Using Terrac...
Developing High Performance and Scalable ColdFusion Applications Using Terrac...Developing High Performance and Scalable ColdFusion Applications Using Terrac...
Developing High Performance and Scalable ColdFusion Applications Using Terrac...Shailendra Prasad
 
AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...
AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...
AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...Amazon Web Services
 
Caching and tuning fun for high scalability @ FOSDEM 2012
Caching and tuning fun for high scalability @ FOSDEM 2012Caching and tuning fun for high scalability @ FOSDEM 2012
Caching and tuning fun for high scalability @ FOSDEM 2012Wim Godden
 
Optimizing WordPress for Performance - WordCamp Houston
Optimizing WordPress for Performance - WordCamp HoustonOptimizing WordPress for Performance - WordCamp Houston
Optimizing WordPress for Performance - WordCamp HoustonChris Olbekson
 
Less and faster – Cache tips for WordPress developers
Less and faster – Cache tips for WordPress developersLess and faster – Cache tips for WordPress developers
Less and faster – Cache tips for WordPress developersSeravo
 
AD113 Speed Up Your Applications w/ Nginx and PageSpeed
AD113  Speed Up Your Applications w/ Nginx and PageSpeedAD113  Speed Up Your Applications w/ Nginx and PageSpeed
AD113 Speed Up Your Applications w/ Nginx and PageSpeededm00se
 

Similar to Optimising PyroCMS for speed and performance boosts (20)

Varnish and Drupal- Accelerating Website Performance and Flexibility with Var...
Varnish and Drupal- Accelerating Website Performance and Flexibility with Var...Varnish and Drupal- Accelerating Website Performance and Flexibility with Var...
Varnish and Drupal- Accelerating Website Performance and Flexibility with Var...
 
Joomla! Performance on Steroids
Joomla! Performance on SteroidsJoomla! Performance on Steroids
Joomla! Performance on Steroids
 
Web Speed And Scalability
Web Speed And ScalabilityWeb Speed And Scalability
Web Speed And Scalability
 
Magento Performance Optimization 101
Magento Performance Optimization 101Magento Performance Optimization 101
Magento Performance Optimization 101
 
Scaling PHP apps
Scaling PHP appsScaling PHP apps
Scaling PHP apps
 
Caching objects-in-memory
Caching objects-in-memoryCaching objects-in-memory
Caching objects-in-memory
 
How to cache your static resources
How to cache your static resourcesHow to cache your static resources
How to cache your static resources
 
Caching 101
Caching 101Caching 101
Caching 101
 
Drupal performance and scalability
Drupal performance and scalabilityDrupal performance and scalability
Drupal performance and scalability
 
Apache Traffic Server
Apache Traffic ServerApache Traffic Server
Apache Traffic Server
 
Drupal performance optimization Best Practices
Drupal performance optimization Best PracticesDrupal performance optimization Best Practices
Drupal performance optimization Best Practices
 
SaltConf14 - Ben Cane - Using SaltStack in High Availability Environments
SaltConf14 - Ben Cane - Using SaltStack in High Availability EnvironmentsSaltConf14 - Ben Cane - Using SaltStack in High Availability Environments
SaltConf14 - Ben Cane - Using SaltStack in High Availability Environments
 
Developing High Performance and Scalable ColdFusion Application Using Terraco...
Developing High Performance and Scalable ColdFusion Application Using Terraco...Developing High Performance and Scalable ColdFusion Application Using Terraco...
Developing High Performance and Scalable ColdFusion Application Using Terraco...
 
Developing High Performance and Scalable ColdFusion Applications Using Terrac...
Developing High Performance and Scalable ColdFusion Applications Using Terrac...Developing High Performance and Scalable ColdFusion Applications Using Terrac...
Developing High Performance and Scalable ColdFusion Applications Using Terrac...
 
AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...
AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...
AWS re:Invent 2016: Amazon CloudFront Flash Talks: Best Practices on Configur...
 
Caching and tuning fun for high scalability @ FOSDEM 2012
Caching and tuning fun for high scalability @ FOSDEM 2012Caching and tuning fun for high scalability @ FOSDEM 2012
Caching and tuning fun for high scalability @ FOSDEM 2012
 
Optimizing WordPress for Performance - WordCamp Houston
Optimizing WordPress for Performance - WordCamp HoustonOptimizing WordPress for Performance - WordCamp Houston
Optimizing WordPress for Performance - WordCamp Houston
 
Less and faster – Cache tips for WordPress developers
Less and faster – Cache tips for WordPress developersLess and faster – Cache tips for WordPress developers
Less and faster – Cache tips for WordPress developers
 
AD113 Speed Up Your Applications w/ Nginx and PageSpeed
AD113  Speed Up Your Applications w/ Nginx and PageSpeedAD113  Speed Up Your Applications w/ Nginx and PageSpeed
AD113 Speed Up Your Applications w/ Nginx and PageSpeed
 
Presentation Tier optimizations
Presentation Tier optimizationsPresentation Tier optimizations
Presentation Tier optimizations
 

Recently uploaded

Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceanilsa9823
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 

Recently uploaded (20)

Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 

Optimising PyroCMS for speed and performance boosts

  • 1. Optimising PyroCMS for faster performance
  • 2. PyroCMS! ! PyroCMS is an incredibly powerful yet user friendly CMS built on the CodeIgniter PHP framework*. ! It’s both client & developer friendly and runs very well on a default install. ! The following slides will offer some tips on performance tweaking the CMS for best results. * Soon to be replaced by Laravel in the forthcoming PyroCMS release…any day now!
  • 3. streams:streamName cache="1440" cache_type="query" ! ! // Do stuff here! ! /streams:streamName Caching queries within streams where possible ! The following stream data is cached for a period of 1 day (1440 minutes / 60):
  • 4. streams:streamName disable="created|updated|created_by" ! ! // Do stuff here! ! /streams:streamName Disable non-essential fields retrieved in your streams ! The following stream disables the created, updated & created_by fields from being retrieved:
  • 5. Disabling the installer check ! After successful installation disable the following check in the hooks.php file (/system/cms/config): $hook['pre_controller'][] = array(! ! 'function' => 'check_installed',! ! 'filename' => 'check_installed.php',! ! 'filepath' => 'hooks'! );
  • 6. SetEnv PYRO_ENV production Set the Pyro environment ! Within your htaccess file on your remote server set the PYRO_ENV environment configuration to production:
  • 7. Compress your website assets ! If you’re running/using an Apache web server configure your htaccess file to enable gzip compression of assets such as the following: ! 1. CSS 2. JavaScript 3. Images 4. JSON/XML 5. Web fonts (I.e. TTF, OTF etc)
  • 8. Enable website asset caching ! Again, if you’re Apache server based, you can configure your htaccess file to enable caching of website assets. ! In the following snippet we cache certain asset types for a period of 1 week (60s * 60m * 24h * 7d = 604800): <IfModule mod_headers.c> ! <FilesMatch ".(ico|pdf|flv|mp4|ogg|webm|jpg|jpeg|png| gif|js|css|swf|eot|font.css|otf|ttc|ttf|woff|svg|zip)$"> ! Header set Cache-Control "max-age=604800, public" ! </FilesMatch>! </IfModule>
  • 9. Optimise your CSS and JS files ! 2 words: minify & concatenate. ! Wherever possible reduce the size of your CSS & JS files through minification and concatenation to reduce excess HTTP requests. ! PyroCMS offers the Asset plugin which you can use to help automate the above process (if you’re not using a front-end workflow automation tool such as Grunt or Gulp).
  • 10. Manage your website images ! Optimise the size of your website images with tools like OptiPNG, PNGQuant, Gifsicle, JPEGtran & SVGO. ! Workflow tools such as Grunt & Gulp offer a rich plug-in system to help with this (amongst other tasks). ! Where possible consider using CSS Sprites to reduce HTTP requests for images.
  • 11. Manage your file references ! Prevent blocking of your web page loading by moving references to your external JavaScript files to the bottom of the page. ! This can be combined with use of PyroCMS’s Asset plugin to concatenate/minify JavaScript (as well as CSS) files.