SlideShare a Scribd company logo
1 of 20
1
Magento Meetup Lucknow– 2020
Blackfire Code Profiling & Performance
Analysis
Presented by – Anand Singh | Sr. Technical Consultant
2
Performance is Money
3
Agenda
• Blackfire – Introduction
• Benefits of Blackfire
• Installation and Setup
• Blackfire Stacks (client, probe, agent and blackfire.io server)
• Blackfire workflow
• Understand different ways for blackfire profiling
• Analysis of blackfire reports and graph
4
APM & Blackfire
APM
- That always runs on server to collect data for each and every request requests
- A continues service running to aggregate the code execution resource consumption data
Blackfire
- Blackfire is a profile that collect deep information at the time of investigating the
performance bottleneck and issues
- It only runs when we ask to run not always and hence do not cause any load on
server
5
There are 3 parts of site performance :
- Time taken by SERVER to build the page to
generate response (Blackfire helps to analyze and
optimize the code executing on server)
- Time taken by NETWORK to transmit response data
- Time taken by browser to render the data on
FRONTEND
6
What is Blackfire - Introduction
- Blackfire is a profiler, performance management solution
- Blackfire helps developers' profile, test, debug, and optimize performance of their applications
- Blackfire provides performance recommendations
- Blackfire helps to set and reach performance expectations through assertions
- Blackfire gathers a lot of data about how your code behaves at runtime
-Blackfire can be used at any step of an application’s lifecycle: during development, test, staging, and
production
- On application code execution, Blackfire gathers resource consumption data.
7
Benefits of Blackfire
• Blackfire can be used on production, It adds no overhead for end users
• Safe to use on production
• No need to modify the code for instrumentations, On the fly Blackfire will gather
the resource consumption data only if profiling is requested by the authorized
blackfire agent
• Using Blackfire, we can profile HTTP requests via browsers or CLI (Web Pages,
Web Services, API calls)
• More proactive that APM, we set our performance expectation through
assertions
• Like unit testing, integration testing we can write our performance tests
scenarios
8
Blackfire Stacks
• the Probe is a language extension that gathers the raw performance
profiles;
• the Agent is a server-side daemon that receives profiles from the Probe,
aggregates them, and forwards them to Blackfire;
• the Browser Extension is a web browser extension used mainly to
trigger profiling from a browser;
• the Client is the command line equivalent of the browser extension, it can
be used from anywhere;
• the Website is used to visualize the profiles.
https://blackfire.io/docs/reference-guide/faq#the-blackfire-stack
9
Blackfire workflow
10
Blackfire workflow
11
Different ways of Blackfire Profiling
Blackfire browser extension
https://blackfire.io/docs/cookbooks/profiling-http-via-browser
Blackfire CLI utility
https://blackfire.io/docs/cookbooks/profiling-http-via-cli
Blackfire php-sdk
https://blackfire.io/docs/integrations/php/sdk
12
Blackfire Call Graph
13
Blackfire - Timeline
14
Blackfire – Setup, Installation and
Upgrade
https://blackfire.io/docs/up-and-running/installation
https://blackfire.io/docs/up-and-running/update
15
Sample Blackfire CLI command
Through CLI we can profile any commands, php script, API request, curl
request
https://blackfire.io/docs/cookbooks/profiling-http-via-cli
Profiling a PHP script is a matter of prefixing your command with blackfire run
$ blackfire run php my-script.php
$ blackfire run php my-script.php --your-script-options and arguments
To take average of several samples, use –samples
$ blackfire --samples 10 run php my-script.php
Blackfire uses curl as sub command to profile http request
blackfire curl http://example.com/
16
Blackfire php-sdk (Manual Instrumentation)
https://blackfire.io/docs/integrations/php/sdk
The Blackfire PHP SDK can be added as a requirement to your project via Composer:
composer require blackfire/php-sdk
17
Blackfire API Profiling
As of now there is no native Blackfire integration for API development application like
Postman, It is simple to profile requests using the Blackfire PHP SDK via an arbitrary
HTTP header that triggers profiling.
https://blackfire.io/docs/integrations/php/sdk
https://blackfire.io/docs/integrations/postman
18
Blackfire Writing Tests
https://blackfire.io/docs/cookbooks/tests
File used : .blackfire.yaml on project root directory
Tests allow to write assertions on this data. We can write performance
tests with Blackfire by writing assertions on different performance metric
dimensions
Command to create file automatically:
blackfire bootstrap-tests
Online validator to validate blackfire’s yaml file
https://blackfire.io/docs/validator
Slide Title
Resources and Links
https://blackfire.io/
https://blackfire.io/docs/up-and-running/installation
https://symfonycasts.com/screencast/blackfire
Thank You!!
Questions???

More Related Content

What's hot

Office Online Server 2016 - a must for on-premises installation for SharePoin...
Office Online Server 2016 - a must for on-premises installation for SharePoin...Office Online Server 2016 - a must for on-premises installation for SharePoin...
Office Online Server 2016 - a must for on-premises installation for SharePoin...SPC Adriatics
 
Intro to Alfresco for Developers
Intro to Alfresco for DevelopersIntro to Alfresco for Developers
Intro to Alfresco for DevelopersJeff Potts
 
Microservice creation using spring cloud, zipkin, ribbon, zull, eureka
Microservice creation using spring cloud, zipkin, ribbon, zull, eurekaMicroservice creation using spring cloud, zipkin, ribbon, zull, eureka
Microservice creation using spring cloud, zipkin, ribbon, zull, eurekaBinit Pathak
 
ASP.NET Request Processing Internals
ASP.NET Request Processing InternalsASP.NET Request Processing Internals
ASP.NET Request Processing InternalsAbhijit Jana
 
Xamarin Form using ASP.NET Core SignalR client
Xamarin Form using ASP.NET Core SignalR clientXamarin Form using ASP.NET Core SignalR client
Xamarin Form using ASP.NET Core SignalR clientChen Yu Pao
 
Simon Jia - The Kohana Framework
Simon Jia - The Kohana FrameworkSimon Jia - The Kohana Framework
Simon Jia - The Kohana FrameworkCaroline_Rose
 
Build sites on iis
Build sites on iisBuild sites on iis
Build sites on iisPaul Davis
 
Sutol How To Be A Lion Tamer
Sutol How To Be A Lion TamerSutol How To Be A Lion Tamer
Sutol How To Be A Lion TamerSharon James
 
Config Management Camp 2015 - How to Deploy CFEngine in the Open Internet
Config Management Camp 2015 - How to Deploy CFEngine in the Open InternetConfig Management Camp 2015 - How to Deploy CFEngine in the Open Internet
Config Management Camp 2015 - How to Deploy CFEngine in the Open InternetCFEngine
 
Soap ui p_squickit
Soap ui p_squickitSoap ui p_squickit
Soap ui p_squickitAditi_17
 
Windows Azure PowerShell Cmdlets
Windows Azure PowerShell CmdletsWindows Azure PowerShell Cmdlets
Windows Azure PowerShell CmdletsPavel Revenkov
 
Percona Server 5.6: Enterprise-Grade MySQL / PLMCE 2014
Percona Server 5.6: Enterprise-Grade MySQL / PLMCE 2014Percona Server 5.6: Enterprise-Grade MySQL / PLMCE 2014
Percona Server 5.6: Enterprise-Grade MySQL / PLMCE 2014Laurynas Biveinis
 
MuleSoft Surat Virtual Meetup#4 - Anypoint Monitoring and MuleSoft dataloader.io
MuleSoft Surat Virtual Meetup#4 - Anypoint Monitoring and MuleSoft dataloader.ioMuleSoft Surat Virtual Meetup#4 - Anypoint Monitoring and MuleSoft dataloader.io
MuleSoft Surat Virtual Meetup#4 - Anypoint Monitoring and MuleSoft dataloader.ioJitendra Bafna
 
SUTOL 2016: IBM Connections Deployment Best and Worst Practices
SUTOL 2016: IBM Connections Deployment Best and Worst PracticesSUTOL 2016: IBM Connections Deployment Best and Worst Practices
SUTOL 2016: IBM Connections Deployment Best and Worst Practicespanagenda
 
Cfg Mgmtcamp 2015 - Releases
Cfg Mgmtcamp 2015 - ReleasesCfg Mgmtcamp 2015 - Releases
Cfg Mgmtcamp 2015 - ReleasesCFEngine
 
Sutol - A Hitchhiker’s Guide to troubleshooting IBM Connections
Sutol - A Hitchhiker’s Guide to troubleshooting IBM ConnectionsSutol - A Hitchhiker’s Guide to troubleshooting IBM Connections
Sutol - A Hitchhiker’s Guide to troubleshooting IBM ConnectionsSharon James
 
Testing and deploying Hats Application on apache Geronimo Server 1.1
Testing and deploying Hats Application on apache Geronimo Server 1.1Testing and deploying Hats Application on apache Geronimo Server 1.1
Testing and deploying Hats Application on apache Geronimo Server 1.1Royal Cyber Inc.
 

What's hot (19)

Office Online Server 2016 - a must for on-premises installation for SharePoin...
Office Online Server 2016 - a must for on-premises installation for SharePoin...Office Online Server 2016 - a must for on-premises installation for SharePoin...
Office Online Server 2016 - a must for on-premises installation for SharePoin...
 
Intro to Alfresco for Developers
Intro to Alfresco for DevelopersIntro to Alfresco for Developers
Intro to Alfresco for Developers
 
Microservice creation using spring cloud, zipkin, ribbon, zull, eureka
Microservice creation using spring cloud, zipkin, ribbon, zull, eurekaMicroservice creation using spring cloud, zipkin, ribbon, zull, eureka
Microservice creation using spring cloud, zipkin, ribbon, zull, eureka
 
ASP.NET Request Processing Internals
ASP.NET Request Processing InternalsASP.NET Request Processing Internals
ASP.NET Request Processing Internals
 
Xamarin Form using ASP.NET Core SignalR client
Xamarin Form using ASP.NET Core SignalR clientXamarin Form using ASP.NET Core SignalR client
Xamarin Form using ASP.NET Core SignalR client
 
Simon Jia - The Kohana Framework
Simon Jia - The Kohana FrameworkSimon Jia - The Kohana Framework
Simon Jia - The Kohana Framework
 
Build sites on iis
Build sites on iisBuild sites on iis
Build sites on iis
 
Sutol How To Be A Lion Tamer
Sutol How To Be A Lion TamerSutol How To Be A Lion Tamer
Sutol How To Be A Lion Tamer
 
Config Management Camp 2015 - How to Deploy CFEngine in the Open Internet
Config Management Camp 2015 - How to Deploy CFEngine in the Open InternetConfig Management Camp 2015 - How to Deploy CFEngine in the Open Internet
Config Management Camp 2015 - How to Deploy CFEngine in the Open Internet
 
Soap ui p_squickit
Soap ui p_squickitSoap ui p_squickit
Soap ui p_squickit
 
Windows Azure PowerShell Cmdlets
Windows Azure PowerShell CmdletsWindows Azure PowerShell Cmdlets
Windows Azure PowerShell Cmdlets
 
Percona Server 5.6: Enterprise-Grade MySQL / PLMCE 2014
Percona Server 5.6: Enterprise-Grade MySQL / PLMCE 2014Percona Server 5.6: Enterprise-Grade MySQL / PLMCE 2014
Percona Server 5.6: Enterprise-Grade MySQL / PLMCE 2014
 
MuleSoft Surat Virtual Meetup#4 - Anypoint Monitoring and MuleSoft dataloader.io
MuleSoft Surat Virtual Meetup#4 - Anypoint Monitoring and MuleSoft dataloader.ioMuleSoft Surat Virtual Meetup#4 - Anypoint Monitoring and MuleSoft dataloader.io
MuleSoft Surat Virtual Meetup#4 - Anypoint Monitoring and MuleSoft dataloader.io
 
Cfml features modern_coding
Cfml features modern_codingCfml features modern_coding
Cfml features modern_coding
 
SUTOL 2016: IBM Connections Deployment Best and Worst Practices
SUTOL 2016: IBM Connections Deployment Best and Worst PracticesSUTOL 2016: IBM Connections Deployment Best and Worst Practices
SUTOL 2016: IBM Connections Deployment Best and Worst Practices
 
Cfg Mgmtcamp 2015 - Releases
Cfg Mgmtcamp 2015 - ReleasesCfg Mgmtcamp 2015 - Releases
Cfg Mgmtcamp 2015 - Releases
 
Sutol - A Hitchhiker’s Guide to troubleshooting IBM Connections
Sutol - A Hitchhiker’s Guide to troubleshooting IBM ConnectionsSutol - A Hitchhiker’s Guide to troubleshooting IBM Connections
Sutol - A Hitchhiker’s Guide to troubleshooting IBM Connections
 
Testing and deploying Hats Application on apache Geronimo Server 1.1
Testing and deploying Hats Application on apache Geronimo Server 1.1Testing and deploying Hats Application on apache Geronimo Server 1.1
Testing and deploying Hats Application on apache Geronimo Server 1.1
 
Dev322
Dev322Dev322
Dev322
 

Similar to Magento meetup lucknow blackfire

Performance profiling and testing of symfony application 2
Performance profiling and testing of symfony application 2Performance profiling and testing of symfony application 2
Performance profiling and testing of symfony application 2Andrew Yatsenko
 
Profiling and inspection with Blackfire.io
Profiling and inspection with Blackfire.ioProfiling and inspection with Blackfire.io
Profiling and inspection with Blackfire.ioEmir Beganović
 
Magento Meetup New Delhi- Performance Optimization
Magento Meetup New Delhi- Performance OptimizationMagento Meetup New Delhi- Performance Optimization
Magento Meetup New Delhi- Performance OptimizationWebkul Software Pvt. Ltd.
 
Android Penetration Testing - Day 3
Android Penetration Testing - Day 3Android Penetration Testing - Day 3
Android Penetration Testing - Day 3Mohammed Adam
 
Programmable infrastructure with FlyScript
Programmable infrastructure with FlyScriptProgrammable infrastructure with FlyScript
Programmable infrastructure with FlyScriptRiverbed Technology
 
Managing Oracle Solaris Systems with Puppet
Managing Oracle Solaris Systems with PuppetManaging Oracle Solaris Systems with Puppet
Managing Oracle Solaris Systems with Puppetglynnfoster
 
第1回福岡SoftLayer勉強会
第1回福岡SoftLayer勉強会第1回福岡SoftLayer勉強会
第1回福岡SoftLayer勉強会Shin Sakamoto
 
Attacking and Defending Mobile Applications
Attacking and Defending Mobile ApplicationsAttacking and Defending Mobile Applications
Attacking and Defending Mobile ApplicationsJerod Brennen
 
Self-Service Provisioning and Hadoop Management with Apache Ambari
Self-Service Provisioning and  Hadoop Management with Apache AmbariSelf-Service Provisioning and  Hadoop Management with Apache Ambari
Self-Service Provisioning and Hadoop Management with Apache AmbariDataWorks Summit
 
Finding vulnerabilities with Burp Suite Custom Scan Profiles.pdf
Finding vulnerabilities with Burp Suite Custom Scan Profiles.pdfFinding vulnerabilities with Burp Suite Custom Scan Profiles.pdf
Finding vulnerabilities with Burp Suite Custom Scan Profiles.pdfNullHyderabad
 
Let's Talk ProIV and Alexa
Let's Talk ProIV and AlexaLet's Talk ProIV and Alexa
Let's Talk ProIV and AlexaAndrew Turner
 
Developer Nirvana with IBM Bluemix™
Developer Nirvana with IBM Bluemix™Developer Nirvana with IBM Bluemix™
Developer Nirvana with IBM Bluemix™IBM
 
Real Life MAF (2.2) Oracle Open World 2015
Real Life MAF (2.2) Oracle Open World 2015Real Life MAF (2.2) Oracle Open World 2015
Real Life MAF (2.2) Oracle Open World 2015Luc Bors
 
Bb world2014 powerpoint_security-automation-at-blackboard_saltzman_matthew_bb
Bb world2014 powerpoint_security-automation-at-blackboard_saltzman_matthew_bbBb world2014 powerpoint_security-automation-at-blackboard_saltzman_matthew_bb
Bb world2014 powerpoint_security-automation-at-blackboard_saltzman_matthew_bbMatthew Saltzman
 
QA or the Highway 2022.pptx
QA or the Highway 2022.pptxQA or the Highway 2022.pptx
QA or the Highway 2022.pptxPerfecto Mobile
 
Android pentesting the hackers-meetup
Android pentesting the hackers-meetupAndroid pentesting the hackers-meetup
Android pentesting the hackers-meetupkunwaratul hax0r
 
Rock Solid Deployment of Web Applications
Rock Solid Deployment of Web ApplicationsRock Solid Deployment of Web Applications
Rock Solid Deployment of Web ApplicationsPablo Godel
 
API Services: Building State-of-the-Art APIs
API Services: Building State-of-the-Art APIsAPI Services: Building State-of-the-Art APIs
API Services: Building State-of-the-Art APIsApigee | Google Cloud
 
Accumulo Summit 2014: Monitoring Apache Accumulo
Accumulo Summit 2014: Monitoring Apache AccumuloAccumulo Summit 2014: Monitoring Apache Accumulo
Accumulo Summit 2014: Monitoring Apache AccumuloAccumulo Summit
 

Similar to Magento meetup lucknow blackfire (20)

Performance profiling and testing of symfony application 2
Performance profiling and testing of symfony application 2Performance profiling and testing of symfony application 2
Performance profiling and testing of symfony application 2
 
Profiling and inspection with Blackfire.io
Profiling and inspection with Blackfire.ioProfiling and inspection with Blackfire.io
Profiling and inspection with Blackfire.io
 
Magento Meetup New Delhi- Performance Optimization
Magento Meetup New Delhi- Performance OptimizationMagento Meetup New Delhi- Performance Optimization
Magento Meetup New Delhi- Performance Optimization
 
Blackfire
BlackfireBlackfire
Blackfire
 
Android Penetration Testing - Day 3
Android Penetration Testing - Day 3Android Penetration Testing - Day 3
Android Penetration Testing - Day 3
 
Programmable infrastructure with FlyScript
Programmable infrastructure with FlyScriptProgrammable infrastructure with FlyScript
Programmable infrastructure with FlyScript
 
Managing Oracle Solaris Systems with Puppet
Managing Oracle Solaris Systems with PuppetManaging Oracle Solaris Systems with Puppet
Managing Oracle Solaris Systems with Puppet
 
第1回福岡SoftLayer勉強会
第1回福岡SoftLayer勉強会第1回福岡SoftLayer勉強会
第1回福岡SoftLayer勉強会
 
Attacking and Defending Mobile Applications
Attacking and Defending Mobile ApplicationsAttacking and Defending Mobile Applications
Attacking and Defending Mobile Applications
 
Self-Service Provisioning and Hadoop Management with Apache Ambari
Self-Service Provisioning and  Hadoop Management with Apache AmbariSelf-Service Provisioning and  Hadoop Management with Apache Ambari
Self-Service Provisioning and Hadoop Management with Apache Ambari
 
Finding vulnerabilities with Burp Suite Custom Scan Profiles.pdf
Finding vulnerabilities with Burp Suite Custom Scan Profiles.pdfFinding vulnerabilities with Burp Suite Custom Scan Profiles.pdf
Finding vulnerabilities with Burp Suite Custom Scan Profiles.pdf
 
Let's Talk ProIV and Alexa
Let's Talk ProIV and AlexaLet's Talk ProIV and Alexa
Let's Talk ProIV and Alexa
 
Developer Nirvana with IBM Bluemix™
Developer Nirvana with IBM Bluemix™Developer Nirvana with IBM Bluemix™
Developer Nirvana with IBM Bluemix™
 
Real Life MAF (2.2) Oracle Open World 2015
Real Life MAF (2.2) Oracle Open World 2015Real Life MAF (2.2) Oracle Open World 2015
Real Life MAF (2.2) Oracle Open World 2015
 
Bb world2014 powerpoint_security-automation-at-blackboard_saltzman_matthew_bb
Bb world2014 powerpoint_security-automation-at-blackboard_saltzman_matthew_bbBb world2014 powerpoint_security-automation-at-blackboard_saltzman_matthew_bb
Bb world2014 powerpoint_security-automation-at-blackboard_saltzman_matthew_bb
 
QA or the Highway 2022.pptx
QA or the Highway 2022.pptxQA or the Highway 2022.pptx
QA or the Highway 2022.pptx
 
Android pentesting the hackers-meetup
Android pentesting the hackers-meetupAndroid pentesting the hackers-meetup
Android pentesting the hackers-meetup
 
Rock Solid Deployment of Web Applications
Rock Solid Deployment of Web ApplicationsRock Solid Deployment of Web Applications
Rock Solid Deployment of Web Applications
 
API Services: Building State-of-the-Art APIs
API Services: Building State-of-the-Art APIsAPI Services: Building State-of-the-Art APIs
API Services: Building State-of-the-Art APIs
 
Accumulo Summit 2014: Monitoring Apache Accumulo
Accumulo Summit 2014: Monitoring Apache AccumuloAccumulo Summit 2014: Monitoring Apache Accumulo
Accumulo Summit 2014: Monitoring Apache Accumulo
 

Recently uploaded

College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024Mark Billinghurst
 
High Profile Call Girls Nashik Megha 7001305949 Independent Escort Service Na...
High Profile Call Girls Nashik Megha 7001305949 Independent Escort Service Na...High Profile Call Girls Nashik Megha 7001305949 Independent Escort Service Na...
High Profile Call Girls Nashik Megha 7001305949 Independent Escort Service Na...Call Girls in Nagpur High Profile
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Serviceranjana rawat
 
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZTE
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerAnamika Sarkar
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 
Analog to Digital and Digital to Analog Converter
Analog to Digital and Digital to Analog ConverterAnalog to Digital and Digital to Analog Converter
Analog to Digital and Digital to Analog ConverterAbhinavSharma374939
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝soniya singh
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).pptssuser5c9d4b1
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSCAESB
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxpranjaldaimarysona
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxwendy cai
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 

Recently uploaded (20)

College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024
 
High Profile Call Girls Nashik Megha 7001305949 Independent Escort Service Na...
High Profile Call Girls Nashik Megha 7001305949 Independent Escort Service Na...High Profile Call Girls Nashik Megha 7001305949 Independent Escort Service Na...
High Profile Call Girls Nashik Megha 7001305949 Independent Escort Service Na...
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
 
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 
Analog to Digital and Digital to Analog Converter
Analog to Digital and Digital to Analog ConverterAnalog to Digital and Digital to Analog Converter
Analog to Digital and Digital to Analog Converter
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentation
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptx
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptx
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 

Magento meetup lucknow blackfire

  • 1. 1 Magento Meetup Lucknow– 2020 Blackfire Code Profiling & Performance Analysis Presented by – Anand Singh | Sr. Technical Consultant
  • 3. 3 Agenda • Blackfire – Introduction • Benefits of Blackfire • Installation and Setup • Blackfire Stacks (client, probe, agent and blackfire.io server) • Blackfire workflow • Understand different ways for blackfire profiling • Analysis of blackfire reports and graph
  • 4. 4 APM & Blackfire APM - That always runs on server to collect data for each and every request requests - A continues service running to aggregate the code execution resource consumption data Blackfire - Blackfire is a profile that collect deep information at the time of investigating the performance bottleneck and issues - It only runs when we ask to run not always and hence do not cause any load on server
  • 5. 5 There are 3 parts of site performance : - Time taken by SERVER to build the page to generate response (Blackfire helps to analyze and optimize the code executing on server) - Time taken by NETWORK to transmit response data - Time taken by browser to render the data on FRONTEND
  • 6. 6 What is Blackfire - Introduction - Blackfire is a profiler, performance management solution - Blackfire helps developers' profile, test, debug, and optimize performance of their applications - Blackfire provides performance recommendations - Blackfire helps to set and reach performance expectations through assertions - Blackfire gathers a lot of data about how your code behaves at runtime -Blackfire can be used at any step of an application’s lifecycle: during development, test, staging, and production - On application code execution, Blackfire gathers resource consumption data.
  • 7. 7 Benefits of Blackfire • Blackfire can be used on production, It adds no overhead for end users • Safe to use on production • No need to modify the code for instrumentations, On the fly Blackfire will gather the resource consumption data only if profiling is requested by the authorized blackfire agent • Using Blackfire, we can profile HTTP requests via browsers or CLI (Web Pages, Web Services, API calls) • More proactive that APM, we set our performance expectation through assertions • Like unit testing, integration testing we can write our performance tests scenarios
  • 8. 8 Blackfire Stacks • the Probe is a language extension that gathers the raw performance profiles; • the Agent is a server-side daemon that receives profiles from the Probe, aggregates them, and forwards them to Blackfire; • the Browser Extension is a web browser extension used mainly to trigger profiling from a browser; • the Client is the command line equivalent of the browser extension, it can be used from anywhere; • the Website is used to visualize the profiles. https://blackfire.io/docs/reference-guide/faq#the-blackfire-stack
  • 11. 11 Different ways of Blackfire Profiling Blackfire browser extension https://blackfire.io/docs/cookbooks/profiling-http-via-browser Blackfire CLI utility https://blackfire.io/docs/cookbooks/profiling-http-via-cli Blackfire php-sdk https://blackfire.io/docs/integrations/php/sdk
  • 14. 14 Blackfire – Setup, Installation and Upgrade https://blackfire.io/docs/up-and-running/installation https://blackfire.io/docs/up-and-running/update
  • 15. 15 Sample Blackfire CLI command Through CLI we can profile any commands, php script, API request, curl request https://blackfire.io/docs/cookbooks/profiling-http-via-cli Profiling a PHP script is a matter of prefixing your command with blackfire run $ blackfire run php my-script.php $ blackfire run php my-script.php --your-script-options and arguments To take average of several samples, use –samples $ blackfire --samples 10 run php my-script.php Blackfire uses curl as sub command to profile http request blackfire curl http://example.com/
  • 16. 16 Blackfire php-sdk (Manual Instrumentation) https://blackfire.io/docs/integrations/php/sdk The Blackfire PHP SDK can be added as a requirement to your project via Composer: composer require blackfire/php-sdk
  • 17. 17 Blackfire API Profiling As of now there is no native Blackfire integration for API development application like Postman, It is simple to profile requests using the Blackfire PHP SDK via an arbitrary HTTP header that triggers profiling. https://blackfire.io/docs/integrations/php/sdk https://blackfire.io/docs/integrations/postman
  • 18. 18 Blackfire Writing Tests https://blackfire.io/docs/cookbooks/tests File used : .blackfire.yaml on project root directory Tests allow to write assertions on this data. We can write performance tests with Blackfire by writing assertions on different performance metric dimensions Command to create file automatically: blackfire bootstrap-tests Online validator to validate blackfire’s yaml file https://blackfire.io/docs/validator
  • 19. Slide Title Resources and Links https://blackfire.io/ https://blackfire.io/docs/up-and-running/installation https://symfonycasts.com/screencast/blackfire