Forum Discussion

madanmr's avatar
madanmr
Copper Contributor
Mar 13, 2024

JMS 2.0 based apps on Azure Service Bus Standard Tier

Hello Everyone,

I have an app hosted on Azure which uses Azure Service Bus Premium Tier, I need to downgrade the subscription to Standard Tier, to cutdown on expenses as it's a major concern, also it fits my application load.

My concern is, my app is based on JMS API 2.0, can I migrate from Premium to Standard? Is JMS API 2.0 supported by Standard Tier? If not, please suggest any solutions or workaround.

 

Thanks

1 Reply

  • While cost efficiency is important, JMS 2.0 is only supported on Azure Service Bus Premium Tier. The Standard Tier lacks full compatibility and will trigger errors when using JMS 2.0 APIs, you may explore some workarounds:

     

    1. Refactor to JMS 1.1

    If your app doesn’t rely heavily on JMS 2.0 features like JMSContext, shared consumers, or advanced acknowledgment modes, you might be able to downgrade to JMS 1.1. But this could mean significant code changes.

    1. Switch to Native AMQP Clients

    Use Azure SDKs or other AMQP-compatible libraries to interact with Service Bus directly. This bypasses JMS entirely but gives you full control and compatibility with Standard Tier.

    1. Hybrid Architecture

    Keep a small Premium namespace for JMS 2.0 workloads and move less critical messaging to Standard. This lets you optimize costs without a full rewrite.

    1. Use Spring Cloud Azure

    If you're using Spring Boot, Spring Cloud Azure offers abstractions that can help bridge the gap between JMS and native Service Bus APIs. You can configure it to use passwordless authentication and managed identities for secure access.

Resources