/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.rocketmq.client.impl;
import java.io.UnsupportedEncodingException;
import java.nio.ByteBuffer;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.Set;
import java.util.concurrent.atomic.AtomicInteger;
import org.apache.commons.lang3.StringUtils;
import org.apache.rocketmq.client.ClientConfig;
import org.apache.rocketmq.client.consumer.PullCallback;
import org.apache.rocketmq.client.consumer.PullResult;
import org.apache.rocketmq.client.consumer.PullStatus;
import org.apache.rocketmq.client.exception.MQBrokerException;
import org.apache.rocketmq.client.exception.MQClientException;
import org.apache.rocketmq.client.hook.SendMessageContext;
import org.apache.rocketmq.client.impl.consumer.PullResultExt;
import org.apache.rocketmq.client.impl.factory.MQClientInstance;
import org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl;
import org.apache.rocketmq.client.impl.producer.TopicPublishInfo;
import org.apache.rocketmq.client.log.ClientLogger;
import org.apache.rocketmq.client.producer.SendCallback;
import org.apache.rocketmq.client.producer.SendResult;
import org.apache.rocketmq.client.producer.SendStatus;
import org.apache.rocketmq.common.DataVersion;
import org.apache.rocketmq.common.MQVersion;
import org.apache.rocketmq.common.MixAll;
import org.apache.rocketmq.common.PlainAccessConfig;
import org.apache.rocketmq.common.TopicConfig;
import org.apache.rocketmq.common.UtilAll;
import org.apache.rocketmq.common.admin.ConsumeStats;
import org.apache.rocketmq.common.admin.TopicStatsTable;
import org.apache.rocketmq.common.message.Message;
import org.apache.rocketmq.common.message.MessageBatch;
import org.apache.rocketmq.common.message.MessageClientIDSetter;
import org.apache.rocketmq.common.message.MessageConst;
import org.apache.rocketmq.common.message.MessageDecoder;
import org.apache.rocketmq.common.message.MessageExt;
import org.apache.rocketmq.common.message.MessageQueue;
import org.apache.rocketmq.common.namesrv.TopAddressing;
import org.apache.rocketmq.common.protocol.NamespaceUtil;
import org.apache.rocketmq.common.protocol.RequestCode;
import org.apache.rocketmq.common.protocol.ResponseCode;
import org.apache.rocketmq.common.protocol.body.BrokerStatsData;
import org.apache.rocketmq.common.protocol.body.CheckClientRequestBody;
import org.apache.rocketmq.common.protocol.body.ClusterAclVersionInfo;
import org.apache.rocketmq.common.protocol.body.ClusterInfo;
import org.apache.rocketmq.common.protocol.body.ConsumeMessageDirectlyResult;
import org.apache.rocketmq.common.protocol.body.ConsumeStatsList;
import org.apache.rocketmq.common.protocol.body.ConsumerConnection;
import org.apache.rocketmq.common.protocol.body.ConsumerRunningInfo;
import org.apache.rocketmq.common.protocol.body.GetConsumerStatusBody;
import org.apache.rocketmq.common.protocol.body.GroupList;
import org.apache.rocketmq.common.protocol.body.KVTable;
import org.apache.rocketmq.common.protocol.body.LockBatchRequestBody;
import org.apache.rocketmq.common.protocol.body.LockBatchResponseBody;
import org.apache.rocketmq.common.protocol.body.ProducerConnection;
import org.apache.rocketmq.common.protocol.body.QueryConsumeQueueResponseBody;
import org.apache.rocketmq.common.protocol.body.QueryConsumeTimeSpanBody;
import org.apache.rocketmq.common.protocol.body.QueryCorrectionOffsetBody;
import org.apache.rocketmq.common.protocol.body.QueueTimeSpan;
import org.apache.rocketmq.common.protocol.body.ResetOffsetBody;
import org.apache.rocketmq.common.protocol.body.SubscriptionGroupWrapper;
import org.apache.rocketmq.common.protocol.body.TopicConfigSerializeWrapper;
import org.apache.rocketmq.common.protocol.body.TopicList;
import org.apache.rocketmq.common.protocol.body.UnlockBatchRequestBody;
import org.apache.rocketmq.common.protocol.header.CloneGroupOffsetRequestHeader;
import org.apache.rocketmq.common.protocol.header.ConsumeMessageDirectlyResultRequestHeader;
import org.apache.rocketmq.common.protocol.header.ConsumerSendMsgBackRequestHeader;
import org.apache.rocketmq.common.protocol.header.CreateAccessConfigRequestHeader;
import org.apache.rocketmq.common.protocol.header.CreateTopicRequestHeader;
import org.apache.rocketmq.common.protocol.header.DeleteAccessConfigRequestHeader;
import org.apache.rocketmq.common.protocol.header.DeleteSubscriptionGroupRequestHeader;
import org.apache.rocketmq.common.protocol.header.DeleteTopicRequestHeader;
import org.apache.rocketmq.common.protocol.header.EndTransactionRequestHeader;
import org.apache.rocketmq.common.protocol.header.GetBrokerAclConfigResponseHeader;
import org.apache.rocketmq.common.protocol.header.GetConsumeStatsInBrokerHeader;
import org.apache.rocketmq.common.protocol.header.GetConsumeStatsRequestHeader;
import org.apache.rocketmq.common.protocol.header.GetConsumerConnectionListRequestHeader;
import org.apache.rocketmq.common.protocol.header.GetConsumerListByGroupRequestHeader;
import org.apache.rocketmq.common.protocol.header.GetConsumerListByGroupResponseBody;
import org.apache.rocketmq.common.protocol.header.GetConsumerRunningInfoRequestHeader;
import org.apache.rocketmq.common.protocol.header.GetConsumerStatusRequestHeader;
import org.apache.rocketmq.common.protocol.header.GetEarliestMsgStoretimeRequestHeader;
import org.apache.rocketmq.common.protocol.header.GetEarliestMsgStoretimeResponseHeader;
import org.apache.rocketmq.common.protocol.header.GetMaxOffsetRequestHeader;
import org.apache.rocketmq.common.protocol.header.GetMaxOffsetResponseHeader;
import org.apache.rocketmq.common.protocol.header.GetMinOffsetRequestHeader;
import org.apache.rocketmq.common.protocol.header.GetMinOffsetResponseHeader;
import org.apache.rocketmq.common.protocol.header.GetProducerConnectionListRequestHeader;
import org.apache.rocketmq.common.protocol.header.GetTopicStatsInfoRequestHeader;
import org.apache.rocketmq.common.protocol.header.GetTopicsByClusterRequestHeader;
import org.apache.rocketmq.common.protocol.header.PullMessageRequestHeader;
import org.apache.rocketmq.common.protocol.header.PullMessageResponseHeader;
import org.apache.rocketmq.common.protocol.header.QueryConsumeQueueRequestHeader;
import org.apache.rocketmq.common.protocol.header.QueryConsumeTimeSpanRequestHeader;
import org.apache.rocketmq.common.protocol.header.QueryConsumerOffsetRequestHeader;
import org.apache.rocketmq.common.protocol.header.QueryConsumerOffsetResponseHeader;
import org.apache.rocketmq.common.protocol.header.QueryCorrectionOffsetHeader;
import org.apache.rocketmq.common.protocol.header.QueryMessageRequestHeader;
import org.apache.rocketmq.common.protocol.header.QueryTopicConsumeByWhoRequestHeader;
import org.apache.rocketmq.common.protocol.header.ResetOffsetRequestHeader;
import org.apache.rocketmq.common.protocol.header.ResumeCheckHalfMessageRequestHeader;
import org.apache.rocketmq.common.protocol.header.SearchOffsetRequestHeader;
import org.apache.rocketmq.common.protocol.header.SearchOffsetResponseHeader;
import org.apache.rocketmq.common.protocol.header.SendMessageRequestHeader;
import org.apach
没有合适的资源?快使用搜索试试~ 我知道了~
rocketmq:RocketMq支持任意延迟时间的延时消息
共1198个文件
java:1006个
md:48个
xml:37个
1星 需积分: 31 48 下载量 75 浏览量
2021-05-26
15:12:51
上传
评论 1
收藏 3.19MB ZIP 举报
温馨提示
RocketMq支持任意延迟的延时消息方案 主要特性 支持任意延迟的延时消息,精确到秒,最长延迟时间为1年。 使用方法 配置broker.conf segmentScale=60 ##每个时间桶的时间范围,单位分钟,默认60,可选值0-60之间,延迟消息并发数越高,配置的值应该越小,如:10 dispatchLogKeepTime=72 ##dispatchLog过期后保存的小时数,默认72 producer DefaultMQProducer producer = new DefaultMQProducer("please_rename_unique_group_name"); producer.setNamesrvAddr("127.0.0.1:9876"); producer.start(); for (int i = 0; i <
资源详情
资源评论
资源推荐
收起资源包目录
rocketmq:RocketMq支持任意延迟时间的延时消息 (1198个子文件)
org.apache.rocketmq.broker.transaction.AbstractTransactionalMessageCheckListener 68B
org.apache.rocketmq.acl.AccessValidator 50B
org.apache.rocketmq.acl.AccessValidator 50B
BUILDING 997B
runbroker.cmd 2KB
runserver.cmd 2KB
tools.cmd 2KB
mqshutdown.cmd 1KB
play.cmd 1KB
mqnamesrv.cmd 1KB
mqbroker.cmd 1KB
mqadmin.cmd 1KB
broker-n1.conf 1KB
broker-n0.conf 1KB
broker-n2.conf 1KB
broker.conf 1KB
broker.conf 949B
.gitignore 180B
MQClientAPIImpl.java 104KB
AdminBrokerProcessor.java 79KB
DefaultMessageStore.java 77KB
CommitLog.java 66KB
DefaultMQProducerImpl.java 61KB
BrokerController.java 53KB
MQClientInstance.java 52KB
DefaultMQPushConsumerImpl.java 52KB
DefaultMQAdminExtImpl.java 48KB
SelectorParser.java 39KB
LoggingBuilder.java 39KB
DefaultMQProducer.java 39KB
RouteInfoManager.java 34KB
DefaultMQPullConsumerImpl.java 34KB
SelectorParserTokenManager.java 32KB
DefaultMQPushConsumer.java 32KB
DLedgerCommitLog.java 30KB
PullMessageProcessor.java 30KB
NettyRemotingClient.java 29KB
PlainAccessValidatorTest.java 29KB
SendMessageProcessor.java 28KB
DefaultRequestProcessor.java 26KB
ConsumeMessageOrderlyService.java 26KB
DefaultMessageStoreTest.java 25KB
NettyRemotingAbstract.java 24KB
BrokerConfig.java 24KB
DefaultMQAdminExt.java 23KB
MessageStoreConfig.java 23KB
ConsumeQueue.java 23KB
HAService.java 22KB
DefaultMQAdminExtTest.java 22KB
TransactionalMessageServiceImpl.java 22KB
MQAdminImpl.java 21KB
MappedFileQueue.java 21KB
MappedFile.java 21KB
NettyRemotingServer.java 20KB
RebalanceImpl.java 20KB
StoreStatsService.java 20KB
ConsumeMessageConcurrentlyService.java 20KB
TopicConfigManager.java 19KB
MQClientAPIImplTest.java 19KB
ConsumeQueueExt.java 19KB
BrokerOuterAPI.java 19KB
ConsumerFilterManager.java 18KB
UtilAll.java 18KB
PlainPermissionManager.java 18KB
RemotingCommand.java 18KB
MixAll.java 18KB
DefaultMessageStoreCleanFilesTest.java 18KB
MessageDecoder.java 18KB
HashedWheelTimer.java 17KB
ScheduleMessageService.java 17KB
DefaultMQPullConsumer.java 17KB
ComparisonExpression.java 16KB
AsyncTraceDispatcher.java 16KB
ExpressionTest.java 16KB
HAConnection.java 16KB
DefaultMQProducerTest.java 16KB
InnerLoggerFactory.java 16KB
AbstractSendMessageProcessor.java 16KB
TransactionalMessageBridge.java 15KB
ProcessQueue.java 15KB
MessageStoreWithFilterTest.java 15KB
MQAdminExt.java 14KB
DefaultMQConsumerWithTraceTest.java 14KB
Broker2Client.java 14KB
MQVersion.java 14KB
TlsTest.java 14KB
DefaultMQPushConsumerTest.java 14KB
SimpleCharStream.java 14KB
SendMessageProcessorTest.java 13KB
EndTransactionProcessor.java 13KB
IndexService.java 13KB
Logger.java 13KB
MonitorService.java 13KB
PlainPermissionManagerTest.java 13KB
ClusterListSubCommand.java 13KB
AllocateMappedFileService.java 12KB
ConsumerProgressSubCommand.java 12KB
DefaultRequestProcessorTest.java 12KB
Producer.java 12KB
WheelTickManager.java 12KB
共 1198 条
- 1
- 2
- 3
- 4
- 5
- 6
- 12
MaDaniel
- 粉丝: 51
- 资源: 4573
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论1