Why We Love Pub-Sub Integrations

February 25, 2022

When it comes to building a fully operational ecosystem, a good network of integrations is essential. Integrations can be built in either a point-to-point fashion, where every system is directly connected to every other system, or in a pub-sub model.

Breaking down our options

Point to Point integration

A point-to-point integration is a pattern where data is published from one software tool directly to another. This is commonly accomplished by either the two tools having a supported integration (for example Hubspot’s integration with Magento) or a third-party tool such as Zapier.

Pros:

  • Quick to setup: Out of the box integrations often just require simple configurations, or a small amount of custom code, to get up and running
  • Little infrastructure to manage: Since the integrations are built into the platform, there is less custom software you need to manage

Cons:

  • Not as flexible: The supported integrations are served as-is, meaning, if the data you want to move between systems is not supported via the integration, then you cannot accomplish that use case.
  • More expensive to run at scale: For larger volumes of data being transfer, tools such as Zapier can start to become expensive

Pub-Sub and integration layers

When an integration layer is built, many systems are connected to each other through a central platform. They communicate to each other using a publication-subscription pattern in place of a standard messaging queue. Source systems publish information to relevant topic boards; other sources that are interested in getting information from the source systems can subscribe to those topics. When  a publisher updates the topic, that information is immediately pushed out to all the subscribers.

When developing an integration layer, there is a bit more to build out.  It requires infrastructure to run on top of, which means you need to manage said infrastructure and that it will be longer process to set up. But that extra work earns you a lot of pay off.

Flexibility

An integration layer enables the ability to take advantage of the full integration functionality of any third-party or custom tool, meaning you can shape your integrations around your business processes

Unlock your data

An integration layer becomes a centralized area where all data in your system flows. This means that you have a central place to perform analytics, reporting, and build new products on top of all of your data

Add any system to your network

The beauty of the pub-sub model is that connecting new systems is incredibly easy. Nothing in your existing ecosystem has to be changed, and there is only one connection that needs to be made. And because it is custom built and can include an implementation detail we call a facade, there is no concern that the system won’t mesh with what you need it to connect to. Adding new use-cases has never been faster!

Transfer of necessary information

A key feature of the pub/sub model is that any system subscribed to receive notifications from another system will get notified about any updates without having to ping the source system for frequent checks. It is a one way flow of information  that goes out to all subscribers in one push.

For any business interested in scalability, using an integration layer and pub-sub messaging patterns opens up a world of potential. The alternative of a growing network of point-to-point integrations becomes such a mess web of closely coupled systems. For a little more upfront work,  your company will save a great deal of time getting new systems up and running once this new infrastructure is established, which to us is a no-brainer. If you are interested in discussing how we can help you build this into your business architecture, drop us a message below!