Blackfire Profiler

Last updated
Blackfire
Developer(s) SensioLabs
Stable release
1.4.0
Written in Go, PHP and JavaScript
Operating system Linux Mac OS X FreeBSD and Microsoft_Windows
Type Performance analysis
License commercial
Website blackfire.io

Blackfire Profiler is a tool that instruments PHP applications to gather data about consumed server resources like memory, CPU time, and I/O operations. Blackfire is also a SaaS service to visualize any callgrind-compatible profile.

Contents

Its architecture [1] [ non-primary source needed ] is based on a Probe, which is a PHP extension that gathers the raw performance profiles and an Agent, which is a server-side daemon that aggregates and forwards profiles to blackfire.io servers to visualize them.

Blackfire has been used by some popular PHP projects such as ownCloud, Drupal, Symfony and Laravel to improve their performance [2] and to spot performance bottlenecks. [3] [4] [ better source needed ] [5] [ better source needed ]

As of March 2015 Blackfire is actively developed. [6] [7] [ better source needed ]

Features

Related Research Articles

A web framework (WF) or web application framework (WAF) is a software framework that is designed to support the development of web applications including web services, web resources, and web APIs. Web frameworks provide a standard way to build and deploy web applications on the World Wide Web. Web frameworks aim to automate the overhead associated with common activities performed in web development. For example, many web frameworks provide libraries for database access, templating frameworks, and session management, and they often promote code reuse. Although they often target development of dynamic web sites, they are also applicable to static websites.

<span class="mw-page-title-main">Symfony</span> PHP web application framework for MVC applications

Symfony is a free and open-source PHP web application framework and a set of reusable PHP component libraries. It was published as free software on October 18, 2005, and released under the MIT License.

Scaffolding, as used in computing, refers to one of two techniques:

This is a comparison of notable web frameworks, software used to build and deploy web applications.

Zend Server is a complete and certified PHP distribution stack originally developed by Zend Technologies intended for high performance and scalable use cases.

<span class="mw-page-title-main">Node.js</span> JavaScript runtime environment

Node.js is a cross-platform, open-source JavaScript runtime environment that can run on Windows, Linux, Unix, macOS, and more. Node.js runs on the V8 JavaScript engine, and executes JavaScript code outside a web browser.

<span class="mw-page-title-main">Composer (software)</span> Software; application level dependency manager for the PHP programming language

Composer is an application-level dependency manager for the PHP programming language that provides a standard format for managing dependencies of PHP software and required libraries. It was developed by Nils Adermann and Jordi Boggiano, who continue to manage the project. They began development in April 2011 and first released it on March 1, 2012. Composer is strongly inspired by Node.js's "npm" and Ruby's "bundler". The project's dependency solving algorithm started out as a PHP-based port of openSUSE's libzypp SAT solver.

<span class="mw-page-title-main">Laravel</span> PHP open-source web application framework

Laravel is a free and open-source PHP-based web framework for building web applications. It was created by Taylor Otwell and intended for the development of web applications following the model–view–controller (MVC) architectural pattern and based on Symfony. Some of the features of Laravel include modular packaging system with a dedicated dependency manager, different ways for accessing relational databases, utilities that aid in application deployment and maintenance, and its orientation toward syntactic sugar.

<span class="mw-page-title-main">Phalcon (framework)</span> PHP open-source web framework

Phalcon is a PHP web framework based on the model–view–controller (MVC) pattern. Originally released in 2012, it is an open-source framework licensed under the terms of the BSD License.

Eclipse Deeplearning4j is a programming library written in Java for the Java virtual machine (JVM). It is a framework with wide support for deep learning algorithms. Deeplearning4j includes implementations of the restricted Boltzmann machine, deep belief net, deep autoencoder, stacked denoising autoencoder and recursive neural tensor network, word2vec, doc2vec, and GloVe. These algorithms all include distributed parallel versions that integrate with Apache Hadoop and Spark.

Kubernetes is an open-source container orchestration system for automating software deployment, scaling, and management. Originally designed by Google, the project is now maintained by a worldwide community of contributors, and the trademark is held by the Cloud Native Computing Foundation.

<span class="mw-page-title-main">Movim</span>

Movim is a distributed social network built on top of XMPP, a popular open standards communication protocol. Movim is a free and open source software licensed under the AGPL-3.0-or-later license. It can be accessed using existing XMPP clients and Jabber accounts.

<span class="mw-page-title-main">WebAssembly</span> Assembly language and bytecode for web browsers

WebAssembly (Wasm) defines a portable binary-code format and a corresponding text format for executable programs as well as software interfaces for facilitating communication between such programs and their host environment.

<span class="mw-page-title-main">Backdrop CMS</span>

Backdrop CMS is an Open source, community-developed, content management system, written in PHP, and licensed under the GNU General Public License. Backdrop CMS was forked from the Drupal CMS in 2013 by two Drupal developers, Nate Lampton and Jen Lampton. Backdrop is very similar to version 7 of the Drupal CMS, maintaining most of the same functionality and features. The project's mission is to "enable people to build highly customized websites affordably, through collaboration and open source software".

<span class="mw-page-title-main">Pop PHP Framework</span> Free and open source PHP web framework

The Pop PHP Framework a free and open source PHP Web framework that was created by Nick Sagona. It is distributed under the BSD License and hosted on GitHub. The framework is intended to be utilized for rapid application development, with an emphasis on web applications.

<span class="mw-page-title-main">Grav (CMS)</span>

Grav is a free software, self-hosted content management system (CMS) written in the PHP programming language and based on the Symfony web application framework. It uses a flat file database for both backend and frontend.

<span class="mw-page-title-main">PeachPie</span>

PeachPie is an open-source PHP language compiler and runtime for the .NET Framework and .NET. It is built on top of the Microsoft Roslyn compiler platform and is based on the first-generation Phalanger project. PeachPie compiles source code written in PHP to CIL byte-code. PeachPie takes advantage of the JIT compiler component of the .NET Framework in order to handle the beginning of the compilation process. Its purpose is not to generate or optimize native code, but rather to compile PHP scripts into .NET assemblies containing CIL code and meta-data. In July 2017, the project became a member of the .NET Foundation.

RoadRunner is an open-source application server, load-balancer and process manager written in Golang (Go) and implemented by PHP 7. It is used in rapid application development to speed up the performance of large web applications for users. It is often used in conjunction with frameworks like Symfony, Laravel, and others to enhance the performance and responsiveness of PHP web applications.

References

  1. Sensiolabs. "Configuration - Blackfire". blackfire.io. Retrieved 2015-03-22.
  2. "Blackfire and recent performance optimizations in ownCloud | ownCloud.org". owncloud.org. Retrieved 2015-03-22.
  3. "Make the InstallKernel progressively build the container instead of building, compiling and dumping from scratch on every module install (38x) [#2396939]| Drupal.org". drupal.org. Retrieved 2015-03-22.
  4. "[DomCrawler] Improve namespace discovery performance by jakzal · Pull Request #14012 · symfony/symfony · GitHub". github.com. Retrieved 2015-03-22.
  5. "Researching Laravel 5 Framework". github.com. Retrieved 2015-04-10.
  6. Blackfire.io. "Blackfire Blog". blog.blackfire.io. Retrieved 2015-03-22.
  7. "Blackfire · GitHub". github.com. Retrieved 2015-03-22.
  8. Sensiolabs. "Profiling Web Pages - Blackfire". blackfire.io. Retrieved 2015-03-22.
  9. Sensiolabs. "Profiling CLI Scripts - Blackfire". blackfire.io. Retrieved 2015-03-22.
  10. Sensiolabs. "Profile an API/Web Service Call - Blackfire". blackfire.io. Retrieved 2015-03-22.
  11. Sensiolabs. "Application Performance Monitoring". blackfire.io. Retrieved 2021-05-05.