SlideShare a Scribd company logo
1 of 56
Download to read offline
PROFILING PHP
A DIVE INTO YOUR APPLICATION
/DennisdeGreef @dennisdegreef
PHPBeneluxConference2015
WHAT IS PROFILING?
WIKIPEDIA
profiling is aform of dynamicprogramanalysis thatmeasures,
for example, the space (memory) or time complexityof a
program, the usage of particular instructions, or the frequency
and durationof functioncalls. Mostcommonly, profiling
information serves to aid program optimization.
SO... DYNAMIC PROGRAM ANALYSIS?
YEAH...
LETS FIRST LOOK AT IT'S COUNTERPART...
STATIC ANALYSIS
WIKIPEDIA
Staticprogramanalysis is the analysis of computer software that
is performed without actuallyexecuting programs
The term is usuallyapplied to the analysis performed byan
automated tool, with human analysis beingcalled program
understanding, program comprehension or code review.
STATIC ANALYSIS TOOLS
There are asetof tools which perform static code analysis.
These tools can be integrated within an automated build.
PHP Mess Detector
PHP Copy/Paste Detector
PHP CodeSniffer
PHP Dead Code Detector
There is anice page containingapredefined setof tools for a
build to be found atJenkins PHP
BUT...
THESE TOOLS ONLY ANALYSE HOW YOUR
CODE IS STRUCTURED, NOT HOW IT BEHAVES.
DYNAMIC ANALYSIS
WIKIPEDIA
The analysis of computer software thatis performed by
executing programs ona real or virtual processor.
For dynamic program analysis to be effective,
the targetprogram mustbe executed with sufficient test inputs
to produce interestingbehavior.
Use of software testingmeasures such as code coverage helps
ensure thatan adequate slice of the program's setof possible
behaviors has been observed.
CALLSTACK
Acallstack is the order in which statements are exectuted.
An example commonlyknown, is an exceptiontrace. This trace
shows allthe statements executed before an exception is
thrown.
CALLGRAPH
Acallgraph is avisual representationof acallstack.
In large applications this graph can give you better insight on how
an application is wired.
PROFILING DATA
Usually, the datagathered with aprofiler can be represented in
stacks or graphs.
Theycan include information regardingmemory- and cpu-usage.
WHY?
REASONS
DebuggingCPUperformance
Debuggingmemoryperformance
DebuggingIO performance
See which function is called how manytimes
Gain insightof the black box thatis the application
REASONS
We live in adigitalage where we wanteverythinginstantly.
Accordingto a , 51 percentof online
shoppers in the U.S claimed if asite is too slow theywillnot
complete apurchase.
Nowadays, search engine indexingalso accounts for page load.
case studyfrom Radware
Thepsychologyofwebperformance
SEO101:Howimportantissitespeedin2014?
CasestudyfromRadware
WARNING!
Premature optimization is the rootof all evil
-- Donald Knuth
Onlyperform optimization when there is aneed to.
CAUSE OF ISSUES
COMMON ISSUES
Network slowdown
Datastore slowdown
Externalresources (API, Filesystems, Network sockets, etc)
Bad code(tm)
ACTIVE VS PASSIVE
ProfilingPHPPart1(DaveyShafik)
ACTIVE PROFILER
Used duringdevelopment
Gather more information than passive profilers
(like variables/values)
Performance impactis bigger
Should _NOT_be used in production
Example: Xdebug
PASSIVE PROFILER
Minimalimpacton performance
Gathers less butsufficientinformation to diagnose issues
(Onlyrecords function calls and cpu + mem)
Examples: , ,XHProf New Relic Blackfire.io
XDEBUG
XDEBUG
Generates files (like Valgrind for C)
Can be analysed byKCacheGrind amongothers
Cachegrind files are relativelybigin size
Also adeveloper toolfor breakpoints and remote debugging
Active profiler
cachegrind
ENABLE XDEBUG PROFILING
#php.inisettings
xdebug.profiler_enable=1
xdebug.profiler_output_dir=/path/to/store/snapshots
xdebug.profiler_enable_trigger=1
XDEBUG WITH KCACHEGRIND
XDEBUG IN PHPSTORM
XDEBUG IN PHPSTORM
XDEBUG IN PHPSTORM
XDEBUG IN PHPSTORM
XHPROF
XHPROF
Developed byFacebook and released as open-source in 2009
PECL extension
Lightweightfor beingapassive profiler
Includes webguifor reviewingand comparingprofilingdata
#Linux(usingaptoryum)
apt-getinstall-yphp5-xhprof
#OSX(usinghomebrew)
brewinstallphp56-xhprof
#ForWindows,usePECLordownloada.dllsomewhere,orcompileforyourown
INSTALLATION
WORDPRESS EXAMPLE
//index.php
xhprof_enable(XHPROF_FLAGS_CPU+XHPROF_FLAGS_MEMORY);
/**LoadstheWordPressEnvironmentandTemplate*/
require(dirname(__FILE__).'/wp-blog-header.php');
$xhprof_data=xhprof_disable();
include_once'xhprof_lib/utils/xhprof_lib.php';
include_once'xhprof_lib/utils/xhprof_runs.php';
$xhprof_runs=newXHProfRuns_Default();
$run_id=$xhprof_runs->save_run($xhprof_data,"xhprof_foo");
CALLSTACK
CALLGRAPH
CALLGRAPH
CALLGRAPH
USEFUL TOOLS
Sets $_COOKIE['_profile'] to 1
XHProf Helper for Chrome
XHProf Helper for Firefox
XHGUI
Web frontend for profile data
Requires MongoDB
Shows callstacks
Shows callgraphs
Can compare differentruns
XHGUI
XHGUI
XHGUI COMPARE
XHGUI COMPARE
XHGUI COMPARE DIFFERENCE
XHGUI CALLSTACK
LINK0
LINK0/PROFILER
Focused on XHProf
Has multiple persistence layers for storingprofiles
Memory
Flysystem
ZendDbAdapter
MongoDB(work in progress)
Available on composer/packagist
FullyObject-orientated
100%code coverage
http://github.com/link0/profiler
GETTING STARTED
Bootstrappingthe profiler
$profiler=newLink0ProfilerProfiler();
$profiler->start();
print_r($profiler->stop());
AddingaPersistenceHandler
profiler=newLink0ProfilerProfiler(
$persistenceHandler=newLink0ProfilerPersistenceHandlerMemoryHandler();
$ $persistenceHandler);
Flysystem example
filesystem=newLink0ProfilerFilesystem(
persistenceHandler=newLink0ProfilerPersistenceHandlerFilesystemHandler(
profiler=newLink0ProfilerProfiler(
$filesystemAdapter=newLeagueFlysystemAdapterLocal('/tmp/profiler');
$ $filesystemAdapter);
$
$ $persistenceHandler);
FUTURE?
*EXCITING SOUNDS*
SOME IDEAS
Enable on production with sampling
Aggregate allprofiles to centralized machine/cluster
Integrate into continuous deployment
Run profilingon acceptance environment
Alertwhen compared differences surpass threshold
Codeception integration
Find business use-cases thatare slow
Make acase for refactoringto the business
Focus on the customers emulated experience
ANY QUESTIONS?
QUESTIONS? I <3 FEEDBACK
Joind.in:
GitHub:
Twitter:
IRC: link0 on Freenode
https://joind.in/talk/view/13420
http://github.com/dennisdegreef
@dennisdegreef
SLIDES ARE ALSO ON JOIND.IN
USEFUL LINKS
ProfilingPHP with PhpStorm and Xdebug
ProfilingPHP with PhpStorm and Zend Debugger
XDebugProfiler documentation
XHProf PHP documentation
Profilingwith XHProf and XHGui
http://github.com/link0/profiler

More Related Content

Similar to Profile PHP Performance with XDebug and XHProf

Profiling PHP - WordPress Meetup Nijmegen 2015-03-11
Profiling PHP - WordPress Meetup Nijmegen 2015-03-11Profiling PHP - WordPress Meetup Nijmegen 2015-03-11
Profiling PHP - WordPress Meetup Nijmegen 2015-03-11Dennis de Greef
 
Profiling PHP - AmsterdamPHP Meetup - 2014-11-20
Profiling PHP - AmsterdamPHP Meetup - 2014-11-20Profiling PHP - AmsterdamPHP Meetup - 2014-11-20
Profiling PHP - AmsterdamPHP Meetup - 2014-11-20Dennis de Greef
 
TB8568_8568_Presentation
TB8568_8568_PresentationTB8568_8568_Presentation
TB8568_8568_PresentationRonnie Falgout
 
ICIC 2013 New Product Introductions CEPT
ICIC 2013 New Product Introductions CEPTICIC 2013 New Product Introductions CEPT
ICIC 2013 New Product Introductions CEPTDr. Haxel Consult
 
GNUCITIZEN Dwk Owasp Day September 2007
GNUCITIZEN Dwk Owasp Day   September 2007GNUCITIZEN Dwk Owasp Day   September 2007
GNUCITIZEN Dwk Owasp Day September 2007guest20ab09
 
RSA 2015 Blending the Automated and the Manual: Making Application Vulnerabil...
RSA 2015 Blending the Automated and the Manual: Making Application Vulnerabil...RSA 2015 Blending the Automated and the Manual: Making Application Vulnerabil...
RSA 2015 Blending the Automated and the Manual: Making Application Vulnerabil...Denim Group
 
Machine programming
Machine programmingMachine programming
Machine programmingDESMOND YUEN
 
How to run an Enterprise PHP Shop
How to run an Enterprise PHP ShopHow to run an Enterprise PHP Shop
How to run an Enterprise PHP ShopJim Plush
 
How AI and ML Can Accelerate and Optimize Software Development and Testing
How AI and ML Can Accelerate and Optimize Software Development and TestingHow AI and ML Can Accelerate and Optimize Software Development and Testing
How AI and ML Can Accelerate and Optimize Software Development and TestingAggregage
 
Bpr assignment 2
Bpr assignment 2Bpr assignment 2
Bpr assignment 2Sheema Adil
 
Big Data analytics per le IT Operations
Big Data analytics per le IT OperationsBig Data analytics per le IT Operations
Big Data analytics per le IT OperationsHP Enterprise Italia
 
Oliver Schuermann - Integrated Software in Networking - the Mystery of SDN
Oliver Schuermann - Integrated Software in Networking - the Mystery of SDNOliver Schuermann - Integrated Software in Networking - the Mystery of SDN
Oliver Schuermann - Integrated Software in Networking - the Mystery of SDNcentralohioissa
 
8_reasons_php_developers_love_using_laravel.pptx
8_reasons_php_developers_love_using_laravel.pptx8_reasons_php_developers_love_using_laravel.pptx
8_reasons_php_developers_love_using_laravel.pptxsarah david
 
DevOps Deconstructed
DevOps DeconstructedDevOps Deconstructed
DevOps DeconstructedJeremy Pullen
 
March APLN: Agile development- Measure & Analyze by Garry Rowland
March APLN: Agile development- Measure & Analyze by Garry RowlandMarch APLN: Agile development- Measure & Analyze by Garry Rowland
March APLN: Agile development- Measure & Analyze by Garry RowlandConscires Agile Practices
 
The top ten free and open-source tools for video analytics.pdf
The top ten free and open-source tools for video analytics.pdfThe top ten free and open-source tools for video analytics.pdf
The top ten free and open-source tools for video analytics.pdfVertexplus Technologies
 
Defect effort prediction models in software
Defect effort prediction models in softwareDefect effort prediction models in software
Defect effort prediction models in softwareIAEME Publication
 
20111104 s4 overview
20111104 s4 overview20111104 s4 overview
20111104 s4 overviewLeo Neumeyer
 
implementing_ai_for_improved_performance_testing_the_key_to_success.pptx
implementing_ai_for_improved_performance_testing_the_key_to_success.pptximplementing_ai_for_improved_performance_testing_the_key_to_success.pptx
implementing_ai_for_improved_performance_testing_the_key_to_success.pptxsarah david
 

Similar to Profile PHP Performance with XDebug and XHProf (20)

Profiling PHP - WordPress Meetup Nijmegen 2015-03-11
Profiling PHP - WordPress Meetup Nijmegen 2015-03-11Profiling PHP - WordPress Meetup Nijmegen 2015-03-11
Profiling PHP - WordPress Meetup Nijmegen 2015-03-11
 
Profiling PHP - AmsterdamPHP Meetup - 2014-11-20
Profiling PHP - AmsterdamPHP Meetup - 2014-11-20Profiling PHP - AmsterdamPHP Meetup - 2014-11-20
Profiling PHP - AmsterdamPHP Meetup - 2014-11-20
 
TB8568_8568_Presentation
TB8568_8568_PresentationTB8568_8568_Presentation
TB8568_8568_Presentation
 
ICIC 2013 New Product Introductions CEPT
ICIC 2013 New Product Introductions CEPTICIC 2013 New Product Introductions CEPT
ICIC 2013 New Product Introductions CEPT
 
GNUCITIZEN Dwk Owasp Day September 2007
GNUCITIZEN Dwk Owasp Day   September 2007GNUCITIZEN Dwk Owasp Day   September 2007
GNUCITIZEN Dwk Owasp Day September 2007
 
RSA 2015 Blending the Automated and the Manual: Making Application Vulnerabil...
RSA 2015 Blending the Automated and the Manual: Making Application Vulnerabil...RSA 2015 Blending the Automated and the Manual: Making Application Vulnerabil...
RSA 2015 Blending the Automated and the Manual: Making Application Vulnerabil...
 
Machine programming
Machine programmingMachine programming
Machine programming
 
How to run an Enterprise PHP Shop
How to run an Enterprise PHP ShopHow to run an Enterprise PHP Shop
How to run an Enterprise PHP Shop
 
How AI and ML Can Accelerate and Optimize Software Development and Testing
How AI and ML Can Accelerate and Optimize Software Development and TestingHow AI and ML Can Accelerate and Optimize Software Development and Testing
How AI and ML Can Accelerate and Optimize Software Development and Testing
 
WoMakersCode 2016 - Shit Happens
WoMakersCode 2016 -  Shit HappensWoMakersCode 2016 -  Shit Happens
WoMakersCode 2016 - Shit Happens
 
Bpr assignment 2
Bpr assignment 2Bpr assignment 2
Bpr assignment 2
 
Big Data analytics per le IT Operations
Big Data analytics per le IT OperationsBig Data analytics per le IT Operations
Big Data analytics per le IT Operations
 
Oliver Schuermann - Integrated Software in Networking - the Mystery of SDN
Oliver Schuermann - Integrated Software in Networking - the Mystery of SDNOliver Schuermann - Integrated Software in Networking - the Mystery of SDN
Oliver Schuermann - Integrated Software in Networking - the Mystery of SDN
 
8_reasons_php_developers_love_using_laravel.pptx
8_reasons_php_developers_love_using_laravel.pptx8_reasons_php_developers_love_using_laravel.pptx
8_reasons_php_developers_love_using_laravel.pptx
 
DevOps Deconstructed
DevOps DeconstructedDevOps Deconstructed
DevOps Deconstructed
 
March APLN: Agile development- Measure & Analyze by Garry Rowland
March APLN: Agile development- Measure & Analyze by Garry RowlandMarch APLN: Agile development- Measure & Analyze by Garry Rowland
March APLN: Agile development- Measure & Analyze by Garry Rowland
 
The top ten free and open-source tools for video analytics.pdf
The top ten free and open-source tools for video analytics.pdfThe top ten free and open-source tools for video analytics.pdf
The top ten free and open-source tools for video analytics.pdf
 
Defect effort prediction models in software
Defect effort prediction models in softwareDefect effort prediction models in software
Defect effort prediction models in software
 
20111104 s4 overview
20111104 s4 overview20111104 s4 overview
20111104 s4 overview
 
implementing_ai_for_improved_performance_testing_the_key_to_success.pptx
implementing_ai_for_improved_performance_testing_the_key_to_success.pptximplementing_ai_for_improved_performance_testing_the_key_to_success.pptx
implementing_ai_for_improved_performance_testing_the_key_to_success.pptx
 

Recently uploaded

Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
cpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptcpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptrcbcrtm
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfkalichargn70th171
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 

Recently uploaded (20)

Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
cpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptcpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.ppt
 
Advantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your BusinessAdvantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your Business
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 

Profile PHP Performance with XDebug and XHProf