Overview

Blackbird is the first enterprise service bus (ESB) for PHP developers. It provides a run-time container that loads, manages, and executes classes, collects and exposes metrics data to management tools, and provides connectivity and utility services to access external resources, such as message queues.

Blackbird Features:

  • Use PHP to rapidly develop applications and application integration services
  • Easy to learn and use - get coding in minutes
  • Written for developers by developers
  • Command-line and protocol-driven management and monitoring
  • Easy object configuration, deployment, and load/unload tasks
  • Less memory usage than a Java ESB
  • Metrics collection, making it easy to develop monitoring and management tools
  • Extensible protocol handler layer - supports STOMP , SMTP, and Jabber out of the box
 

What It's Not:

  • A full-blown, Java ESB like Apache ServiceMix
  • A replacement for other middleware, such as Apache ActiveMQ
  • As fast, in theory, as a compiled language (although see below)
  • Fully object-oriented (because PHP is not)
  • Written by architects for architects

Why Are You Doing This When <Project X> Already Exists?

ITema provides managed, hosted applications to small businesses, with an emphasis on integration. Part of our vision is to offer our customers choice, so they aren't locked into a specific product or vendor. We need very good integration technology or we'll end up with an unmanageable spider web of integration hooks. An ESB is tailor-made for this type of work. It gives us the loose coupling we need to let applications run independently, and handles grunt-work tasks like communicating via message queues so we can focus on writing the code that does the real work.

The available Java ESB products didn't meet our needs. PHP was a more natural choice, but there was no ESB available for it. We decided it was better for us to write what we needed than to try to shoehorn what we were doing into another product. Our hope is that by releasing Blackbird under the GPL, other developers will get as much out of it as we have.

Blackbird isn't intended to be an isolated project, or a replacement for a Java ESB. In fact, we anticipated that it could be very useful to use both a Java and PHP ESB at the same time, in different layers of an architecture. Blackbird's design makes this straightforward, and it expects to communicate via STOMP with a message queue such as Apache ActiveMQ. It can even use the same ActiveMQ instance that supports a ServiceMix environment, so writing a Blackbird component to communicate with a ServiceMix component is easy!

License

Blackbird is licensed under the GNU General Public License, and is free for both personal and business use. Commercial support is also available - please visit ITema's Web site via the link below and use our Contact Us form if you're interested in our support offerings.

No warranty is made, expressed, or implied as to the proper functionality of Blackbird, this Web site, your own computer, the code you write, or, well, anything else, for that matter.

If you find Blackbird useful, please visit our Forum and drop us a line! However, please do not report bugs in the forum - use the Bug Tracker!



ITema - "Making IT Simple."