Skip to content

Provide a configuration property for JMS listener container's max messages per task #39533

Closed as not planned
@apinske

Description

@apinske
  • Spring Boot 2.7.18
  • Default DMLC JMS Listener Config
  • the active listener threads do not automatically scale down (using default config)
  • taken code path org.springframework.jms.listener.DefaultMessageListenerContainer.AsyncMessageListenerInvoker.executeOngoingLoop()
  • there is no default mechanism to change the path taken, i.e. no spring.jms.listener.max-messages-per-task property)
  1. I don't understand the need for the two code paths in spring-framework in the first place
  2. but since they are there, somewhere this problem should be addressed
    1. either fix spring-framework to also scale down in the executeOngoingLoop-Case
    2. in spring-boot use the other code-path (e.g. set maxMessagesPerTask=1); or at least make it configurable through spring-boot

Find a sample here: https://github.com/apinske/playground-mq/tree/scaling

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions