PSR-7 Middleware gives us a standard for writing modules that deal with HTTP requests. Using something like Slim or Zend Expressive, you can quickly and easily chain these modules together to save you time and effort. That’s all well and good, but what happens when you’re not working with HTTP requests? What if you’re working with message queues? Or data going to and from a database? Or pretty much anything that isn’t a HTTP request?

Wouldn’t it be great if we could take the concept of building pluggable pipelines, and apply it to any kind of situation that we have?

In this talk, Stuart will introduce you to the Instruction Bus - what it is, how to install it, and how to use it to create the pipelines that you need for your application. He’ll show you how to make it type-safe (a long-standing criticism of PSR-7), and how to go about testing and debugging code that runs inside these pipelines. By the end of the talk, you’ll have a worked example that you can download and start using straight away: an open-source library that encrypts and signs messages for messaging systems such as Amazon SQS.


Comments are closed.

Simon R Jones at 13:04 on 8 Apr 2017

Very interesting, good to see a talk on pipelines/middleware that isn't HTTP focussed. Certainly helps me understand the concepts better.

Elliot Ward at 09:02 on 9 Apr 2017

I've seen many middleware talks before without really getting it. After watching this talk everything clicked. The slides were legible and focussed to the specific point being made at all times. The delivery was relaxed and clear, well paced and the emphasis on quality and maintability actually helped illustrate the middleware concepts rather than distract from them. I can't think of a single suggestion to improve this talk.

Alex Pott at 09:35 on 9 Apr 2017

Really liked this talk and like all the best I immediately want to start applying the examples to my our code. The way the concept was explain through a real life but simple to understand example was really great.

Drew McLellan at 12:31 on 9 Apr 2017

Super talk. I did lose track of the terminology at one point, but that might just be my inexperience with the subject and so many new concepts to take on board.

Dave Liddament at 15:02 on 9 Apr 2017

Great talk. I'll definitely move a pipeline implemented using Symfony events to an instruction bus - much simpler.

Thanks for answering all my questions after the talk too.

Shaun Walker at 10:48 on 10 Apr 2017

Brilliant talk giving some great practical examples on what makes up a pipeline and how to actually implement one.
Personally it felt a little too classroom/workshop-like to me with the speaker frequently posing questions for the audience to answer.
The talk seemed to spend a little too much time trying to teach/re-inforce DRY principles which just personally as a senior felt a bit out of place/redundant, and I would think if you're going to a talk about middleware and instruction busses you likely have a grasp on those DRY principles. But I enjoyed the talk and learned, having never implemented a pipeline from scratch before, only used existing ones.

Pete Samways at 09:28 on 11 Apr 2017

Great talk, very informative, and well presented. I came away with a much improved understanding of the principles involved

Fantastic talk, Stuart was clear and the talk was incredibly informative. My only critique was that the code slides were sometimes a little difficult to understand at the speed and order they were presented.