SlideShare a Scribd company logo
1 of 21
Download to read offline
1401 Avenue du Mondial 98
 Immeuble Oxygène
34000 Montpellier
04 99 13 68 60
1 KALIOP.COM
How to deploy &
optimize eZ Publish
high-traffic / bigdata context
Le
High traffic ? Huge volume ?
2
High-traffic ?
Exemples
> 5 M pages / vues / mois
Peak loads ?
Big Data ?
Transactions ?
(import – export - REST)
User profiling ?
(auth – settings – peruser UI)
500K + user/day500K + user/day
+200%
1M+ datas
100k transact./day
50%+ authenticated
(portal features)
+
++
+
++
+++
Critical issues : Critical mass : Complexity to solve :
Exemples
> 5 M pages / vues / mois
Replicated ?
(PRA – Worldwide cloud)
2+ ++++
Le
Keys of success
3
Exemples
> 5 M pages / vues / mois
Project management
approach
Technical expertise Tools
Do not focus solely on technical
expertise !
Web Architect /
SCRUM Master
Web Architect /
SCRUM Master
Le
Keys of success / PM approach
4
Exemples
> 5 M pages / vues / mois
Project management
approach
Role of the Web Architect : Never stop to (re)design. Arbitrate & find
workarounds for all the contradictory issues : UX, front-end, performances, dev,
hosting, delay, cost, stability, SEO, marketing operations...
Role of the project manager (or SCRUM Master) : Protect the team.
Understand, explain & make the POC possible , code refactoring, continuous
integration & devOps
Role of the project owner : Build the team & be clear on the KPIs
Exemple : possible to challenge the UX ? (VS performances)
Exemple : ready to work without a Gantt ? (VS kanban)
Le
Keys of success / PM approach
5
Tools
Monitoring : complexity to monitor all the stack
(in most cases, only on low level services, not on PHP / slow queries)
Metrics : complexity to have metrics on all the the stack
(in most cases, only on low level services, or end-users trafic)
Deployment tools : the easier it is, the more consuming it is
(in most cases, copy the files & purge the cache...)
Testing : complexity to automate unit testing / user testing
(in most cases... nothing)
Capistrano
Le
Keys of success / Technical expertise
6
Technical expertise
(not only eZ)
FPM
Fast
CGI
APC
And more...
Le
Keys of success / Technical expertise
7
eZ FS2 StaleCache
INI
Templates
Médias
Viewcache
Template-block
Médias (copy)
HTTP Caches
ESI
++++
Easy to host
Save ressources
Easy to setup/switch
StaleCache
Simplify the deployment process
----
High NFS activity
Require top-level ($$$) NFS
Require an high eZ quality dev
Require frequent purges
APC APC APC
Stale Cache
( no flock )
Le
Keys of success / Technical expertise
8
eZ DFS Cluster
INI
Templates
Cache (copy)
INI
Templates
Cache (copy)
INI
Templates
Cache (copy)
Médias (copy)
HTTP Caches
ESI
APC APC APC
EZ DFS
Médias
Viewcache
Template-block
...
META DATA
++++
Compatible with most of platforms
Low NFS activity
Easy to setup/switch
StaleCache
----
Waste of ressources
ClusterDB bottleneck
Complex deployment process
Require an high eZ quality dev
Require frequent purges
Le
Keys of success / Technical expertise
9
DevOps mode
Do not expect the hosting architecture (sizing) to make up
for the application issues...
Do not expect the development (hack, trick) to make up
for the hosting architecture issues...
Le
Keys of success / Technical expertise
10
DevOps mode
(expertise in the middle)
APC
apc.filters = "-cache.*.php"
(exlude compiled templates)
MySql
tmpdir → tmpfs (avoid « on disk » storage)
Add missing indexes (remote_id)
Solr
Split read/write operations
Varnish
Synchronize with eZ (x-node pruge)
APC
Le
Keys of success / Technical expertise
11
eZ PublishOptimize your code
(what you can deduce)
Reduce the
Cache-block activity
& volume
Optimize the
viewcache
activity
Remove
Useless SQL
Use small range keys
Set an expiry value
Use ezpagedata() instead
Replace with ESI
No more than 1K files !
Avoid too many view parameters
Optimize smartviewcache
Synchronize with Varnish
Replace with Solr
Use PHP cache
Avoid datamap loadOptimize
Solr
split read / write activities
Delay « commit » (not only index)
Schedule your
background
tasks
Le
Keys of success / Technical expertise
12
eZ PublishOptimize your code
(read tutos)
Le
Keys of success / Technical expertise
13
eZ PublishOptimize your code
(Learn how it works)
Basic optimization :
DelayedIndexing = true (→ will not delay hard commits for all actions ! )
OptimizeOnCommit = disabled
CRON // ezfoptimizeindex (3 minutes)
CRON // ezfindexcontent (1 day)
Medium optimization :
OptimizeOnCommit = disabled
DisableDeleteCommits = true (+ CRON to commit)
DisableDirectCommits=true (+ CRON to commit)
CRON // bin/php/ezsolrcommit.php (3 minutes)
CRON // ezfoptimizeindex (1 day)
Other great optimizations :
- Replicate Solr, and split the Read (search..) / Write (commit, optimize), to avoid concurrencies
- Avoid hard commits (soft commits to avoid fsync ops, commitWithin to delay pending docs within Solr)
addDoc Hard Commit (rebuild indexes + fsync)
Soft Commit (rebuild indexes)
CommitWithin (commit all pending docs within X secs)
Le
Keys of success / Technical expertise
14
Optimize your code
(Get metrics)
(what you can not guess)
APC
EZ DFS
META DATA
GET
METRICS
Le
Keys of success / Technical expertise
15
Optimize your code
(Get metrics)
(what you can not guess)
Why session_start
lock ???
eZ Bug on the
checkValidity=false setting...
will always create a
session_start on the index.php
Le
Keys of success / Technical expertise
16
Optimize your code
(Get metrics)
(what you can not guess)
Why a unique table
insert needs 9,6
sec ???
Server side tuning requested
(memory, table optimize, host
the clusterDB on another
server...)
Le
Keys of success / Technical expertise
17
Optimize your code
(Get metrics)
(what you can not guess)
Why my code
provides 1988
cURL calls ???
Mmhh...
How to say...
NEXT
Le
Enough to resolve the following context ?
18
High-traffic ?
Exemples
> 5 M pages / vues / mois
Peak loads ?
Big Data ?
Transactions ?
(import – export - REST)
User profiling ?
(auth – settings – peruser UI)
500K + user/day500K + user/day
+200%
1M+ datas
100k transact./day
50%+ authentifié
(portal features)
+
++
+
++
+++
Critical issues : Critical mass : Complexity to solve :
Exemples
> 5 M pages / vues / mois
Replicated ?
(PRA – Worldwide cloud)
2+ ++++
Le
Enough to resolve the following context ?
19
Externalize the user database (if too big)
Build a full ESI front-end (pure HTTP cache logical)
Replace the DB cluster with Redis or memcached
Externalize medias on CDN
Use a custom PHP Cache (exemple)
...
NO ! Be creative !
Le
Enough to resolve the following context ?
20
Be creative !
Object.datamap → PHP array
PHP cache file (eZPHPCreator)
On publish
Store all the attributes
Pre-generate related values
On read
Read object
datamap
Fetch, filter,
facet, sort..
HTML
Le
Enough to resolve the following context ?
21
Ready for eZP5...
Native HTTP Cache
Native Storage abstraction
Native pure MVC
Native ESI support
…
Full Symfony stack

More Related Content

What's hot

Symfony workshop introductory slides
Symfony workshop introductory slidesSymfony workshop introductory slides
Symfony workshop introductory slidesStefan Koopmanschap
 
Magento caching
Magento cachingMagento caching
Magento cachingYireo
 
Devoxx Maroc 2015 HTTP 1, HTTP 2 and folks
Devoxx Maroc  2015 HTTP 1, HTTP 2 and folksDevoxx Maroc  2015 HTTP 1, HTTP 2 and folks
Devoxx Maroc 2015 HTTP 1, HTTP 2 and folksNicolas Martignole
 
CakePHPのWebTestCaseでfixtureを使う
CakePHPのWebTestCaseでfixtureを使うCakePHPのWebTestCaseでfixtureを使う
CakePHPのWebTestCaseでfixtureを使うkishida4slideshare
 
Automatic testing and quality assurance for WordPress plugins and themes
Automatic testing and quality assurance for WordPress plugins and themesAutomatic testing and quality assurance for WordPress plugins and themes
Automatic testing and quality assurance for WordPress plugins and themesOtto Kekäläinen
 
Caching for Cash: Caching
Caching for Cash: CachingCaching for Cash: Caching
Caching for Cash: CachingScott MacVicar
 
Cowboy rabbit-websockets
Cowboy rabbit-websocketsCowboy rabbit-websockets
Cowboy rabbit-websocketsWade Mealing
 
Methods and Best Practices for High Performance eCommerce
Methods and Best Practices for High Performance eCommerceMethods and Best Practices for High Performance eCommerce
Methods and Best Practices for High Performance eCommercedmitriysoroka
 
PHP and FastCGI Performance Optimizations
PHP and FastCGI Performance OptimizationsPHP and FastCGI Performance Optimizations
PHP and FastCGI Performance OptimizationsAlessandro Pilotti
 
Performance tips for Symfony2 & PHP
Performance tips for Symfony2 & PHPPerformance tips for Symfony2 & PHP
Performance tips for Symfony2 & PHPMax Romanovsky
 
WordCamp Finland 2015 - WordPress Security
WordCamp Finland 2015 - WordPress SecurityWordCamp Finland 2015 - WordPress Security
WordCamp Finland 2015 - WordPress SecurityTiia Rantanen
 

What's hot (16)

Symfony workshop introductory slides
Symfony workshop introductory slidesSymfony workshop introductory slides
Symfony workshop introductory slides
 
Introduction to php
Introduction to phpIntroduction to php
Introduction to php
 
Magento caching
Magento cachingMagento caching
Magento caching
 
Devoxx Maroc 2015 HTTP 1, HTTP 2 and folks
Devoxx Maroc  2015 HTTP 1, HTTP 2 and folksDevoxx Maroc  2015 HTTP 1, HTTP 2 and folks
Devoxx Maroc 2015 HTTP 1, HTTP 2 and folks
 
CakePHPのWebTestCaseでfixtureを使う
CakePHPのWebTestCaseでfixtureを使うCakePHPのWebTestCaseでfixtureを使う
CakePHPのWebTestCaseでfixtureを使う
 
Scaling WordPress
Scaling WordPressScaling WordPress
Scaling WordPress
 
Symfony for non-techies
Symfony for non-techiesSymfony for non-techies
Symfony for non-techies
 
Automatic testing and quality assurance for WordPress plugins and themes
Automatic testing and quality assurance for WordPress plugins and themesAutomatic testing and quality assurance for WordPress plugins and themes
Automatic testing and quality assurance for WordPress plugins and themes
 
Caching for Cash: Caching
Caching for Cash: CachingCaching for Cash: Caching
Caching for Cash: Caching
 
Cowboy rabbit-websockets
Cowboy rabbit-websocketsCowboy rabbit-websockets
Cowboy rabbit-websockets
 
Methods and Best Practices for High Performance eCommerce
Methods and Best Practices for High Performance eCommerceMethods and Best Practices for High Performance eCommerce
Methods and Best Practices for High Performance eCommerce
 
Realtime with-websockets-2015
Realtime with-websockets-2015Realtime with-websockets-2015
Realtime with-websockets-2015
 
PHP and FastCGI Performance Optimizations
PHP and FastCGI Performance OptimizationsPHP and FastCGI Performance Optimizations
PHP and FastCGI Performance Optimizations
 
Performance tips for Symfony2 & PHP
Performance tips for Symfony2 & PHPPerformance tips for Symfony2 & PHP
Performance tips for Symfony2 & PHP
 
Websocket 101 in Python
Websocket 101 in PythonWebsocket 101 in Python
Websocket 101 in Python
 
WordCamp Finland 2015 - WordPress Security
WordCamp Finland 2015 - WordPress SecurityWordCamp Finland 2015 - WordPress Security
WordCamp Finland 2015 - WordPress Security
 

Viewers also liked

Underwater Photo Gallery: Andrey Shpatak
Underwater Photo Gallery: Andrey ShpatakUnderwater Photo Gallery: Andrey Shpatak
Underwater Photo Gallery: Andrey Shpatakguimera
 
Oxygene channel presentation
Oxygene channel presentationOxygene channel presentation
Oxygene channel presentationReza Jivani
 
National Geographic Photographers: Brian Skerry
National Geographic Photographers: Brian SkerryNational Geographic Photographers: Brian Skerry
National Geographic Photographers: Brian Skerryguimera
 
Sylfen, Stockage d'énergie long terme par hydrogène
Sylfen, Stockage d'énergie long terme par hydrogèneSylfen, Stockage d'énergie long terme par hydrogène
Sylfen, Stockage d'énergie long terme par hydrogèneSylfen
 
Colors of the World_ Underwater
Colors of the World_ UnderwaterColors of the World_ Underwater
Colors of the World_ Underwaterguimera
 
Astronomy Photographer of the Year 2013 finalists
Astronomy Photographer of the Year 2013 finalistsAstronomy Photographer of the Year 2013 finalists
Astronomy Photographer of the Year 2013 finalistsguimera
 
Pictures from the 20th century in black and white
Pictures from the 20th century in black and whitePictures from the 20th century in black and white
Pictures from the 20th century in black and whiteguimera
 
Questions diagram set 1=terkini 1
Questions diagram set 1=terkini 1Questions diagram set 1=terkini 1
Questions diagram set 1=terkini 1MRSMPC
 
Détresses respiratoires ilunga
Détresses respiratoires ilungaDétresses respiratoires ilunga
Détresses respiratoires ilungaesf3
 
Acid attack on concrete
Acid attack on concreteAcid attack on concrete
Acid attack on concreteAyaz Malik
 
C16 alcohols and carboxylic acids
C16 alcohols and carboxylic acidsC16 alcohols and carboxylic acids
C16 alcohols and carboxylic acidsChemrcwss
 
Relation betwee n hc print version
Relation betwee n hc  print version Relation betwee n hc  print version
Relation betwee n hc print version sulaimanmohd80
 
Le Moteur A Hydrogene
Le Moteur A HydrogeneLe Moteur A Hydrogene
Le Moteur A HydrogeneCinemaTICE
 

Viewers also liked (20)

Uslides3
Uslides3Uslides3
Uslides3
 
Underwater Photo Gallery: Andrey Shpatak
Underwater Photo Gallery: Andrey ShpatakUnderwater Photo Gallery: Andrey Shpatak
Underwater Photo Gallery: Andrey Shpatak
 
Oxygene channel presentation
Oxygene channel presentationOxygene channel presentation
Oxygene channel presentation
 
National Geographic Photographers: Brian Skerry
National Geographic Photographers: Brian SkerryNational Geographic Photographers: Brian Skerry
National Geographic Photographers: Brian Skerry
 
Sylfen, Stockage d'énergie long terme par hydrogène
Sylfen, Stockage d'énergie long terme par hydrogèneSylfen, Stockage d'énergie long terme par hydrogène
Sylfen, Stockage d'énergie long terme par hydrogène
 
Robospacsuit
RobospacsuitRobospacsuit
Robospacsuit
 
Colors of the World_ Underwater
Colors of the World_ UnderwaterColors of the World_ Underwater
Colors of the World_ Underwater
 
Astronomy Photographer of the Year 2013 finalists
Astronomy Photographer of the Year 2013 finalistsAstronomy Photographer of the Year 2013 finalists
Astronomy Photographer of the Year 2013 finalists
 
Pictures from the 20th century in black and white
Pictures from the 20th century in black and whitePictures from the 20th century in black and white
Pictures from the 20th century in black and white
 
Course a pied et physiologie
Course a pied et physiologieCourse a pied et physiologie
Course a pied et physiologie
 
L'origine de la vie
L'origine de la vieL'origine de la vie
L'origine de la vie
 
Planchers 05
Planchers 05Planchers 05
Planchers 05
 
Questions diagram set 1=terkini 1
Questions diagram set 1=terkini 1Questions diagram set 1=terkini 1
Questions diagram set 1=terkini 1
 
Corrosion
CorrosionCorrosion
Corrosion
 
Acid deposition_by Rajkumar
Acid deposition_by RajkumarAcid deposition_by Rajkumar
Acid deposition_by Rajkumar
 
Détresses respiratoires ilunga
Détresses respiratoires ilungaDétresses respiratoires ilunga
Détresses respiratoires ilunga
 
Acid attack on concrete
Acid attack on concreteAcid attack on concrete
Acid attack on concrete
 
C16 alcohols and carboxylic acids
C16 alcohols and carboxylic acidsC16 alcohols and carboxylic acids
C16 alcohols and carboxylic acids
 
Relation betwee n hc print version
Relation betwee n hc  print version Relation betwee n hc  print version
Relation betwee n hc print version
 
Le Moteur A Hydrogene
Le Moteur A HydrogeneLe Moteur A Hydrogene
Le Moteur A Hydrogene
 

Similar to Deploy and optimize eZ Publish for high-traffic and big data contexts

Caching and tuning fun for high scalability
Caching and tuning fun for high scalabilityCaching and tuning fun for high scalability
Caching and tuning fun for high scalabilityWim Godden
 
Magento performancenbs
Magento performancenbsMagento performancenbs
Magento performancenbsvarien
 
Caching and tuning fun for high scalability
Caching and tuning fun for high scalabilityCaching and tuning fun for high scalability
Caching and tuning fun for high scalabilityWim Godden
 
Caching and tuning fun for high scalability @ FrOSCon 2011
Caching and tuning fun for high scalability @ FrOSCon 2011Caching and tuning fun for high scalability @ FrOSCon 2011
Caching and tuning fun for high scalability @ FrOSCon 2011Wim Godden
 
php & performance
 php & performance php & performance
php & performancesimon8410
 
The Value of Reactive
The Value of ReactiveThe Value of Reactive
The Value of ReactiveVMware Tanzu
 
Profiling PHP with Xdebug / Webgrind
Profiling PHP with Xdebug / WebgrindProfiling PHP with Xdebug / Webgrind
Profiling PHP with Xdebug / WebgrindSam Keen
 
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
 
Overview Of Parallel Development - Ericnel
Overview Of Parallel Development -  EricnelOverview Of Parallel Development -  Ericnel
Overview Of Parallel Development - Ericnelukdpe
 
OFF SHORE RECRUITER TRAINING
OFF SHORE RECRUITER TRAININGOFF SHORE RECRUITER TRAINING
OFF SHORE RECRUITER TRAININGsatish_kumar646
 
Apache Samza 1.0 - What's New, What's Next
Apache Samza 1.0 - What's New, What's NextApache Samza 1.0 - What's New, What's Next
Apache Samza 1.0 - What's New, What's NextPrateek Maheshwari
 
Serverless in-action
Serverless in-actionServerless in-action
Serverless in-actionAssaf Gannon
 
6 tips for improving ruby performance
6 tips for improving ruby performance6 tips for improving ruby performance
6 tips for improving ruby performanceEngine Yard
 
Performance schema in_my_sql_5.6_pluk2013
Performance schema in_my_sql_5.6_pluk2013Performance schema in_my_sql_5.6_pluk2013
Performance schema in_my_sql_5.6_pluk2013Valeriy Kravchuk
 
When dynamic becomes static : the next step in web caching techniques
When dynamic becomes static : the next step in web caching techniquesWhen dynamic becomes static : the next step in web caching techniques
When dynamic becomes static : the next step in web caching techniquesWim Godden
 
Entenda de onde vem toda a potência do Intel® Xeon Phi™
Entenda de onde vem toda a potência do Intel® Xeon Phi™ Entenda de onde vem toda a potência do Intel® Xeon Phi™
Entenda de onde vem toda a potência do Intel® Xeon Phi™ Intel Software Brasil
 

Similar to Deploy and optimize eZ Publish for high-traffic and big data contexts (20)

Caching and tuning fun for high scalability
Caching and tuning fun for high scalabilityCaching and tuning fun for high scalability
Caching and tuning fun for high scalability
 
Magento performancenbs
Magento performancenbsMagento performancenbs
Magento performancenbs
 
Caching and tuning fun for high scalability
Caching and tuning fun for high scalabilityCaching and tuning fun for high scalability
Caching and tuning fun for high scalability
 
Caching and tuning fun for high scalability @ FrOSCon 2011
Caching and tuning fun for high scalability @ FrOSCon 2011Caching and tuning fun for high scalability @ FrOSCon 2011
Caching and tuning fun for high scalability @ FrOSCon 2011
 
php & performance
 php & performance php & performance
php & performance
 
The value of reactive
The value of reactiveThe value of reactive
The value of reactive
 
The Value of Reactive
The Value of ReactiveThe Value of Reactive
The Value of Reactive
 
Profiling PHP with Xdebug / Webgrind
Profiling PHP with Xdebug / WebgrindProfiling PHP with Xdebug / Webgrind
Profiling PHP with Xdebug / Webgrind
 
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
 
Overview Of Parallel Development - Ericnel
Overview Of Parallel Development -  EricnelOverview Of Parallel Development -  Ericnel
Overview Of Parallel Development - Ericnel
 
Ipc mysql php
Ipc mysql php Ipc mysql php
Ipc mysql php
 
OFF SHORE RECRUITER TRAINING
OFF SHORE RECRUITER TRAININGOFF SHORE RECRUITER TRAINING
OFF SHORE RECRUITER TRAINING
 
Apache Samza 1.0 - What's New, What's Next
Apache Samza 1.0 - What's New, What's NextApache Samza 1.0 - What's New, What's Next
Apache Samza 1.0 - What's New, What's Next
 
Serverless in-action
Serverless in-actionServerless in-action
Serverless in-action
 
Ams.rb Oktober
Ams.rb OktoberAms.rb Oktober
Ams.rb Oktober
 
6 tips for improving ruby performance
6 tips for improving ruby performance6 tips for improving ruby performance
6 tips for improving ruby performance
 
Performance schema in_my_sql_5.6_pluk2013
Performance schema in_my_sql_5.6_pluk2013Performance schema in_my_sql_5.6_pluk2013
Performance schema in_my_sql_5.6_pluk2013
 
.net Framework
.net Framework.net Framework
.net Framework
 
When dynamic becomes static : the next step in web caching techniques
When dynamic becomes static : the next step in web caching techniquesWhen dynamic becomes static : the next step in web caching techniques
When dynamic becomes static : the next step in web caching techniques
 
Entenda de onde vem toda a potência do Intel® Xeon Phi™
Entenda de onde vem toda a potência do Intel® Xeon Phi™ Entenda de onde vem toda a potência do Intel® Xeon Phi™
Entenda de onde vem toda a potência do Intel® Xeon Phi™
 

More from Kaliop-slide

E z conference 2016 : The Next Generation of Innovative Applications: Powere...
E z conference 2016  : The Next Generation of Innovative Applications: Powere...E z conference 2016  : The Next Generation of Innovative Applications: Powere...
E z conference 2016 : The Next Generation of Innovative Applications: Powere...Kaliop-slide
 
L'agilité au service de l'innovation
L'agilité au service de l'innovationL'agilité au service de l'innovation
L'agilité au service de l'innovationKaliop-slide
 
[webinar du 26/02/2015] Magento / Prestashop : bien choisir sa solution e-com...
[webinar du 26/02/2015] Magento / Prestashop : bien choisir sa solution e-com...[webinar du 26/02/2015] Magento / Prestashop : bien choisir sa solution e-com...
[webinar du 26/02/2015] Magento / Prestashop : bien choisir sa solution e-com...Kaliop-slide
 
[Webinar du 6/11/2014] Réussir son projet E-commerce en mode agile
[Webinar du 6/11/2014] Réussir son projet E-commerce en mode agile[Webinar du 6/11/2014] Réussir son projet E-commerce en mode agile
[Webinar du 6/11/2014] Réussir son projet E-commerce en mode agileKaliop-slide
 
[Webinar du 17/06/2014] Bien intégrer sa boutique e-Commerce à son système d'...
[Webinar du 17/06/2014] Bien intégrer sa boutique e-Commerce à son système d'...[Webinar du 17/06/2014] Bien intégrer sa boutique e-Commerce à son système d'...
[Webinar du 17/06/2014] Bien intégrer sa boutique e-Commerce à son système d'...Kaliop-slide
 
Web performances : Is It not the right time to (re)consider CMS ?
Web performances : Is It not the right time to (re)consider CMS ?Web performances : Is It not the right time to (re)consider CMS ?
Web performances : Is It not the right time to (re)consider CMS ?Kaliop-slide
 
L’amélioration continue de votre environnement de travail et de votre entrepr...
L’amélioration continue de votre environnement de travail et de votre entrepr...L’amélioration continue de votre environnement de travail et de votre entrepr...
L’amélioration continue de votre environnement de travail et de votre entrepr...Kaliop-slide
 
Ezobject wrapper workshop
Ezobject wrapper workshopEzobject wrapper workshop
Ezobject wrapper workshopKaliop-slide
 
Comment créer, optimiser et monétiser vos contenus ?
Comment créer, optimiser et monétiser vos contenus ?Comment créer, optimiser et monétiser vos contenus ?
Comment créer, optimiser et monétiser vos contenus ?Kaliop-slide
 
Web performance optimization
Web performance optimizationWeb performance optimization
Web performance optimizationKaliop-slide
 
Utilisation d’eZ Flow sur le site www.kaliop.fr
Utilisation d’eZ Flow sur le site www.kaliop.frUtilisation d’eZ Flow sur le site www.kaliop.fr
Utilisation d’eZ Flow sur le site www.kaliop.frKaliop-slide
 
Webinar e-tourisme : Créer une expérience utilisateur riche grâce à eZ Publish
Webinar e-tourisme : Créer une expérience utilisateur riche grâce à eZ PublishWebinar e-tourisme : Créer une expérience utilisateur riche grâce à eZ Publish
Webinar e-tourisme : Créer une expérience utilisateur riche grâce à eZ PublishKaliop-slide
 
Bien choisir sa solution e-commerce
Bien choisir sa solution e-commerceBien choisir sa solution e-commerce
Bien choisir sa solution e-commerceKaliop-slide
 
Webinar : ezpublish pour vos projets e-tourisme
Webinar : ezpublish pour vos projets e-tourismeWebinar : ezpublish pour vos projets e-tourisme
Webinar : ezpublish pour vos projets e-tourismeKaliop-slide
 
Optimisez vos flux commerciaux avec la marketing automation
Optimisez vos flux commerciaux avec la marketing automationOptimisez vos flux commerciaux avec la marketing automation
Optimisez vos flux commerciaux avec la marketing automationKaliop-slide
 
Tour de Contrôle (Kaliop E-Commerce Dataflow System)
Tour de Contrôle (Kaliop E-Commerce Dataflow System)Tour de Contrôle (Kaliop E-Commerce Dataflow System)
Tour de Contrôle (Kaliop E-Commerce Dataflow System)Kaliop-slide
 
LE RESPONSIVE WEBDESIGN : VOTRE VISIBILITÉ WEB OPTIMALE SUR TOUS LES SUPPORTS...
LE RESPONSIVE WEBDESIGN : VOTRE VISIBILITÉ WEB OPTIMALE SUR TOUS LES SUPPORTS...LE RESPONSIVE WEBDESIGN : VOTRE VISIBILITÉ WEB OPTIMALE SUR TOUS LES SUPPORTS...
LE RESPONSIVE WEBDESIGN : VOTRE VISIBILITÉ WEB OPTIMALE SUR TOUS LES SUPPORTS...Kaliop-slide
 
Redeploiement d’une plateforme eZpublish multisites internationale
Redeploiement d’une plateforme eZpublish multisites internationaleRedeploiement d’une plateforme eZpublish multisites internationale
Redeploiement d’une plateforme eZpublish multisites internationaleKaliop-slide
 
eZ UnConference - Z Publish top-performance through mastery (and extension) o...
eZ UnConference - Z Publish top-performance through mastery (and extension) o...eZ UnConference - Z Publish top-performance through mastery (and extension) o...
eZ UnConference - Z Publish top-performance through mastery (and extension) o...Kaliop-slide
 
Workshop eZ Publish Caching Mechanisms
Workshop eZ Publish Caching MechanismsWorkshop eZ Publish Caching Mechanisms
Workshop eZ Publish Caching MechanismsKaliop-slide
 

More from Kaliop-slide (20)

E z conference 2016 : The Next Generation of Innovative Applications: Powere...
E z conference 2016  : The Next Generation of Innovative Applications: Powere...E z conference 2016  : The Next Generation of Innovative Applications: Powere...
E z conference 2016 : The Next Generation of Innovative Applications: Powere...
 
L'agilité au service de l'innovation
L'agilité au service de l'innovationL'agilité au service de l'innovation
L'agilité au service de l'innovation
 
[webinar du 26/02/2015] Magento / Prestashop : bien choisir sa solution e-com...
[webinar du 26/02/2015] Magento / Prestashop : bien choisir sa solution e-com...[webinar du 26/02/2015] Magento / Prestashop : bien choisir sa solution e-com...
[webinar du 26/02/2015] Magento / Prestashop : bien choisir sa solution e-com...
 
[Webinar du 6/11/2014] Réussir son projet E-commerce en mode agile
[Webinar du 6/11/2014] Réussir son projet E-commerce en mode agile[Webinar du 6/11/2014] Réussir son projet E-commerce en mode agile
[Webinar du 6/11/2014] Réussir son projet E-commerce en mode agile
 
[Webinar du 17/06/2014] Bien intégrer sa boutique e-Commerce à son système d'...
[Webinar du 17/06/2014] Bien intégrer sa boutique e-Commerce à son système d'...[Webinar du 17/06/2014] Bien intégrer sa boutique e-Commerce à son système d'...
[Webinar du 17/06/2014] Bien intégrer sa boutique e-Commerce à son système d'...
 
Web performances : Is It not the right time to (re)consider CMS ?
Web performances : Is It not the right time to (re)consider CMS ?Web performances : Is It not the right time to (re)consider CMS ?
Web performances : Is It not the right time to (re)consider CMS ?
 
L’amélioration continue de votre environnement de travail et de votre entrepr...
L’amélioration continue de votre environnement de travail et de votre entrepr...L’amélioration continue de votre environnement de travail et de votre entrepr...
L’amélioration continue de votre environnement de travail et de votre entrepr...
 
Ezobject wrapper workshop
Ezobject wrapper workshopEzobject wrapper workshop
Ezobject wrapper workshop
 
Comment créer, optimiser et monétiser vos contenus ?
Comment créer, optimiser et monétiser vos contenus ?Comment créer, optimiser et monétiser vos contenus ?
Comment créer, optimiser et monétiser vos contenus ?
 
Web performance optimization
Web performance optimizationWeb performance optimization
Web performance optimization
 
Utilisation d’eZ Flow sur le site www.kaliop.fr
Utilisation d’eZ Flow sur le site www.kaliop.frUtilisation d’eZ Flow sur le site www.kaliop.fr
Utilisation d’eZ Flow sur le site www.kaliop.fr
 
Webinar e-tourisme : Créer une expérience utilisateur riche grâce à eZ Publish
Webinar e-tourisme : Créer une expérience utilisateur riche grâce à eZ PublishWebinar e-tourisme : Créer une expérience utilisateur riche grâce à eZ Publish
Webinar e-tourisme : Créer une expérience utilisateur riche grâce à eZ Publish
 
Bien choisir sa solution e-commerce
Bien choisir sa solution e-commerceBien choisir sa solution e-commerce
Bien choisir sa solution e-commerce
 
Webinar : ezpublish pour vos projets e-tourisme
Webinar : ezpublish pour vos projets e-tourismeWebinar : ezpublish pour vos projets e-tourisme
Webinar : ezpublish pour vos projets e-tourisme
 
Optimisez vos flux commerciaux avec la marketing automation
Optimisez vos flux commerciaux avec la marketing automationOptimisez vos flux commerciaux avec la marketing automation
Optimisez vos flux commerciaux avec la marketing automation
 
Tour de Contrôle (Kaliop E-Commerce Dataflow System)
Tour de Contrôle (Kaliop E-Commerce Dataflow System)Tour de Contrôle (Kaliop E-Commerce Dataflow System)
Tour de Contrôle (Kaliop E-Commerce Dataflow System)
 
LE RESPONSIVE WEBDESIGN : VOTRE VISIBILITÉ WEB OPTIMALE SUR TOUS LES SUPPORTS...
LE RESPONSIVE WEBDESIGN : VOTRE VISIBILITÉ WEB OPTIMALE SUR TOUS LES SUPPORTS...LE RESPONSIVE WEBDESIGN : VOTRE VISIBILITÉ WEB OPTIMALE SUR TOUS LES SUPPORTS...
LE RESPONSIVE WEBDESIGN : VOTRE VISIBILITÉ WEB OPTIMALE SUR TOUS LES SUPPORTS...
 
Redeploiement d’une plateforme eZpublish multisites internationale
Redeploiement d’une plateforme eZpublish multisites internationaleRedeploiement d’une plateforme eZpublish multisites internationale
Redeploiement d’une plateforme eZpublish multisites internationale
 
eZ UnConference - Z Publish top-performance through mastery (and extension) o...
eZ UnConference - Z Publish top-performance through mastery (and extension) o...eZ UnConference - Z Publish top-performance through mastery (and extension) o...
eZ UnConference - Z Publish top-performance through mastery (and extension) o...
 
Workshop eZ Publish Caching Mechanisms
Workshop eZ Publish Caching MechanismsWorkshop eZ Publish Caching Mechanisms
Workshop eZ Publish Caching Mechanisms
 

Recently uploaded

Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 

Recently uploaded (20)

Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 

Deploy and optimize eZ Publish for high-traffic and big data contexts

  • 1. 1401 Avenue du Mondial 98  Immeuble Oxygène 34000 Montpellier 04 99 13 68 60 1 KALIOP.COM How to deploy & optimize eZ Publish high-traffic / bigdata context
  • 2. Le High traffic ? Huge volume ? 2 High-traffic ? Exemples > 5 M pages / vues / mois Peak loads ? Big Data ? Transactions ? (import – export - REST) User profiling ? (auth – settings – peruser UI) 500K + user/day500K + user/day +200% 1M+ datas 100k transact./day 50%+ authenticated (portal features) + ++ + ++ +++ Critical issues : Critical mass : Complexity to solve : Exemples > 5 M pages / vues / mois Replicated ? (PRA – Worldwide cloud) 2+ ++++
  • 3. Le Keys of success 3 Exemples > 5 M pages / vues / mois Project management approach Technical expertise Tools Do not focus solely on technical expertise ! Web Architect / SCRUM Master Web Architect / SCRUM Master
  • 4. Le Keys of success / PM approach 4 Exemples > 5 M pages / vues / mois Project management approach Role of the Web Architect : Never stop to (re)design. Arbitrate & find workarounds for all the contradictory issues : UX, front-end, performances, dev, hosting, delay, cost, stability, SEO, marketing operations... Role of the project manager (or SCRUM Master) : Protect the team. Understand, explain & make the POC possible , code refactoring, continuous integration & devOps Role of the project owner : Build the team & be clear on the KPIs Exemple : possible to challenge the UX ? (VS performances) Exemple : ready to work without a Gantt ? (VS kanban)
  • 5. Le Keys of success / PM approach 5 Tools Monitoring : complexity to monitor all the stack (in most cases, only on low level services, not on PHP / slow queries) Metrics : complexity to have metrics on all the the stack (in most cases, only on low level services, or end-users trafic) Deployment tools : the easier it is, the more consuming it is (in most cases, copy the files & purge the cache...) Testing : complexity to automate unit testing / user testing (in most cases... nothing) Capistrano
  • 6. Le Keys of success / Technical expertise 6 Technical expertise (not only eZ) FPM Fast CGI APC And more...
  • 7. Le Keys of success / Technical expertise 7 eZ FS2 StaleCache INI Templates Médias Viewcache Template-block Médias (copy) HTTP Caches ESI ++++ Easy to host Save ressources Easy to setup/switch StaleCache Simplify the deployment process ---- High NFS activity Require top-level ($$$) NFS Require an high eZ quality dev Require frequent purges APC APC APC Stale Cache ( no flock )
  • 8. Le Keys of success / Technical expertise 8 eZ DFS Cluster INI Templates Cache (copy) INI Templates Cache (copy) INI Templates Cache (copy) Médias (copy) HTTP Caches ESI APC APC APC EZ DFS Médias Viewcache Template-block ... META DATA ++++ Compatible with most of platforms Low NFS activity Easy to setup/switch StaleCache ---- Waste of ressources ClusterDB bottleneck Complex deployment process Require an high eZ quality dev Require frequent purges
  • 9. Le Keys of success / Technical expertise 9 DevOps mode Do not expect the hosting architecture (sizing) to make up for the application issues... Do not expect the development (hack, trick) to make up for the hosting architecture issues...
  • 10. Le Keys of success / Technical expertise 10 DevOps mode (expertise in the middle) APC apc.filters = "-cache.*.php" (exlude compiled templates) MySql tmpdir → tmpfs (avoid « on disk » storage) Add missing indexes (remote_id) Solr Split read/write operations Varnish Synchronize with eZ (x-node pruge) APC
  • 11. Le Keys of success / Technical expertise 11 eZ PublishOptimize your code (what you can deduce) Reduce the Cache-block activity & volume Optimize the viewcache activity Remove Useless SQL Use small range keys Set an expiry value Use ezpagedata() instead Replace with ESI No more than 1K files ! Avoid too many view parameters Optimize smartviewcache Synchronize with Varnish Replace with Solr Use PHP cache Avoid datamap loadOptimize Solr split read / write activities Delay « commit » (not only index) Schedule your background tasks
  • 12. Le Keys of success / Technical expertise 12 eZ PublishOptimize your code (read tutos)
  • 13. Le Keys of success / Technical expertise 13 eZ PublishOptimize your code (Learn how it works) Basic optimization : DelayedIndexing = true (→ will not delay hard commits for all actions ! ) OptimizeOnCommit = disabled CRON // ezfoptimizeindex (3 minutes) CRON // ezfindexcontent (1 day) Medium optimization : OptimizeOnCommit = disabled DisableDeleteCommits = true (+ CRON to commit) DisableDirectCommits=true (+ CRON to commit) CRON // bin/php/ezsolrcommit.php (3 minutes) CRON // ezfoptimizeindex (1 day) Other great optimizations : - Replicate Solr, and split the Read (search..) / Write (commit, optimize), to avoid concurrencies - Avoid hard commits (soft commits to avoid fsync ops, commitWithin to delay pending docs within Solr) addDoc Hard Commit (rebuild indexes + fsync) Soft Commit (rebuild indexes) CommitWithin (commit all pending docs within X secs)
  • 14. Le Keys of success / Technical expertise 14 Optimize your code (Get metrics) (what you can not guess) APC EZ DFS META DATA GET METRICS
  • 15. Le Keys of success / Technical expertise 15 Optimize your code (Get metrics) (what you can not guess) Why session_start lock ??? eZ Bug on the checkValidity=false setting... will always create a session_start on the index.php
  • 16. Le Keys of success / Technical expertise 16 Optimize your code (Get metrics) (what you can not guess) Why a unique table insert needs 9,6 sec ??? Server side tuning requested (memory, table optimize, host the clusterDB on another server...)
  • 17. Le Keys of success / Technical expertise 17 Optimize your code (Get metrics) (what you can not guess) Why my code provides 1988 cURL calls ??? Mmhh... How to say... NEXT
  • 18. Le Enough to resolve the following context ? 18 High-traffic ? Exemples > 5 M pages / vues / mois Peak loads ? Big Data ? Transactions ? (import – export - REST) User profiling ? (auth – settings – peruser UI) 500K + user/day500K + user/day +200% 1M+ datas 100k transact./day 50%+ authentifié (portal features) + ++ + ++ +++ Critical issues : Critical mass : Complexity to solve : Exemples > 5 M pages / vues / mois Replicated ? (PRA – Worldwide cloud) 2+ ++++
  • 19. Le Enough to resolve the following context ? 19 Externalize the user database (if too big) Build a full ESI front-end (pure HTTP cache logical) Replace the DB cluster with Redis or memcached Externalize medias on CDN Use a custom PHP Cache (exemple) ... NO ! Be creative !
  • 20. Le Enough to resolve the following context ? 20 Be creative ! Object.datamap → PHP array PHP cache file (eZPHPCreator) On publish Store all the attributes Pre-generate related values On read Read object datamap Fetch, filter, facet, sort.. HTML
  • 21. Le Enough to resolve the following context ? 21 Ready for eZP5... Native HTTP Cache Native Storage abstraction Native pure MVC Native ESI support … Full Symfony stack