//package com.fdkankan.modeling.config;
//
//import org.apache.rocketmq.client.exception.MQClientException;
//import org.apache.rocketmq.client.producer.DefaultMQProducer;
//import org.slf4j.Logger;
//import org.slf4j.LoggerFactory;
//import org.springframework.beans.factory.annotation.Value;
//import org.springframework.context.annotation.Bean;
//import org.springframework.context.annotation.Configuration;
//
//@Configuration
//public class MQProducerConfig {
//
// private static Logger log = LoggerFactory.getLogger(MQProducerConfig.class);
//
// @Value("${rocketmq.name-srv-addr}")
// private String nameSrvAddr;
// @Value("${rocketmq.producer.group.testGrop}")
// private String producerGroupName;
// /**
// * 消息最大大小,默认4M
// */
// @Value("${rocketmq.producer.maxMessageSize}")
// private Integer maxMessageSize;
// /**
// * 消息发送超时时间,默认3秒
// */
// @Value("${rocketmq.producer.sendMsgTimeout}")
// private Integer sendMsgTimeout;
// /**
// * 消息发送失败重试次数,默认2次
// */
// @Value("${rocketmq.producer.retryTimesWhenSendFailed}")
// private Integer retryTimesWhenSendFailed;
//
// /**
// * 初始化向rocketmq发送普通消息的生产者
// */
// @Bean("ModelingProducer")
// public DefaultMQProducer testProducer() throws MQClientException {
// /*
// * 一个应用创建一个Producer,由应用来维护此对象,可以设置为全局对象或者单例
// * 注意:ProducerGroupName需要由应用来保证唯一
// * ProducerGroup这个概念发送普通的消息时,作用不大,但是发送分布式事务消息时,比较关键,
// * 因为服务器会回查这个Group下的任意一个Producer
// */
// DefaultMQProducer producer = new DefaultMQProducer(producerGroupName);
// producer.setInstanceName(producerGroupName);
// producer.setNamesrvAddr(nameSrvAddr);
// //设置 lnstanceName,当一个 Jvm 需要启动多个 Producer 的时候,通过设置不同的 InstanceName来区分,不设置的话系统使用默认名称“DEFAULT”
//// producer.setInstanceName(properties.getProducerInstanceName());
// producer.setVipChannelEnabled(false);
// //发送消息超时时间,默认3000
// producer.setSendMsgTimeout(sendMsgTimeout);
// //发送消息失败重试次数,默认2
// producer.setRetryTimesWhenSendAsyncFailed(retryTimesWhenSendFailed);
// //消息最大长度 默认1024*1024*4(4M)
// producer.setMaxMessageSize(maxMessageSize);
// /*
// * Producer对象在使用之前必须要调用start初始化,初始化一次即可
// * 注意:切记不可以在每次发送消息时,都调用start方法
// */
// producer.start();
// log.info("RocketMq " + this + " Started.");
// return producer;
// }
//
//
//
//}