Service Bus - amitbhilagude/userfullinks GitHub Wiki

  1. Message and Events Types
    1. Queue
    2. Topics and Subscriptions
    3. Event hub
    4. Event Grid
  2. Service bus Implementation options
    1. Azure portal
    2. .net SDK
    3. Rest APIs
    4. Monitoring through Visual Studio
      1. Install Azure SDK
    5. Service bus explorer
  3. Shared access policy and configuration
  4. NameSpaceManager class
    1. CreateQueue with QueueDescription
    2. Create Topics with Topics description
    3. Create Subscription with Subscription description
  5. Brokered message
    1. BrokeredMessage Class
    2. Message contains Header and Body
    3. Header will have predefined property, option override and create custom property
    4. Body can have serialize object or binary stram for file, image etc. Need to assign initially. Recommended approach is to use json serialisation and send string messages
    5. Message Header and body size: 256 kb to 1 MB
    6. Message can send sync or async method
    7. Process and receive bulk message
    8. Duplicate message detection with MessageId set
  6. Topics And Subscriptions
    1. Message route with Filter property
    2. Filter property can have TSQL or correlation syntax. Correlation can have equal only.
    3. Message filter with Sessionid
  7. Wire Tap pattern
    1. Create dummy subscription to receive all messages
    2. For service Queue also, recommend to covert into topics and subscriptions and create one subscription for monitoring
  8. Two way communication (Request- response)
    1. ReplyToSession Id
    2. Sessionid
  9. Fault handling
    1. Retry policy
    2. Deadlatter and poison message Message Expiration
  10. Performance Testing for premium plan https://github.com/Azure-Samples/service-bus-dotnet-messaging-performance/tree/b33bde54adf83ae38fc64d09cdceb7c5819f6e87
  11. Best practices guideline https://github.com/amitbhilagude/userfullinks/wiki/Service-Bus,-Relay--Best-Practices-Questions
  12. Architecture example. (Queue Only recommended for long running workflows and loosely coupled architecture) https://docs.microsoft.com/en-us/azure/architecture/guide/architecture-styles/web-queue-worker