阿里云首页 金融分布式架构 SOFAStack

配置相关

与消息队列配置相关的常见问题如下:


消息队列消息在服务器保存多长时间?

存储的消息最多保存 3 天,超过 3 天未消费的消息会被删除。

消息队列消息 Body 的长度限制是多少?

消息大小根据消息类型来限制。具体限制如下所述:

  • 普通消息和顺序消息:4 MB

  • 事务消息和定时/延时消息:64 KB

消息队列客户端如何设置消费线程数?

在启动 Consumer 时,设置一个 ConsumeThreadNums 属性即可。具体示例如下所示:

public static void main(String[] args) {
        Properties properties = new Properties();
        properties.put(PropertyKeyConst.GROUP_ID, "GID_001");
        properties.put(PropertyKeyConst.AccessKey, "xxxxxxxxxxxx");
        properties.put(PropertyKeyConst.SecretKey, "xxxxxxxxxxxx");
        /**
         * 设置消费端线程数固定为 20
         */
        properties.put(PropertyKeyConst.ConsumeThreadNums, 20);
        Consumer consumer = ONSFactory.createConsumer(properties);
        consumer.subscribe("TestTopic", "*", new MessageListener() {
            publicAction consume(Message message, ConsumeContext context) {
                System.out.println("Receive: " + message);
                return Action.CommitMessage;
            }
        });
        consumer.start();
        System.out.println("Consumer Started");
}