Service Bus Architecture Anti Pattern: Huge Payload with binary data embedded

Don’t know if this a extended use case or not, but I’ve been told about an Oracle Service Bus real implementation in wich the payload managed is petty much a monster of darkness because two reasons:

  • huge binary data embedded (in the order of dozens megabytes)
  • large message that needs to be parsed/transformed heavily

This pattern has big impact in two aspects of computation resources:

  • memory management
  • cpu processing

If you feel you are suffering the invonvenients of this situation and don’t understand why your IT echosystem is not providing a convenient solution just check the following:

  • are your cpu’s at 100% of the load?
  • is the heap growing and decreasing like a high frequency wave in the range of 5 seconds period or less?

If that’s the case and you need better response times and higher throughput you have two main choices:

  •  buy a bunch of compute resources and make the appropiate sizing because you think you are doing your best
  • put the binary data out the payload “as a link” and try to reduce message parsing as much as possible designing better interfaces or putting some transformation processing in other places

If performance is bad while your compute resources are idle like a lazy dog then ask for somebody to review your implementation because maybe you have some inefficiency over there

Enjoy 😉

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.