1. kafka发送方法

@Component
@Import(KafkaAutoProperties.class)
public class KafkaProducer { @Autowired
private KafkaConfigProperties kafkaConfigProperties; public void send(String topic, String msg) {
//1、准备配置文件
Properties props = new Properties();
props.put("bootstrap.servers", kafkaConfigProperties.getBootstrapServers());
props.put("acks", kafkaConfigProperties.getAcks());
props.put("retries", kafkaConfigProperties.getRetries());
props.put("batch.size", kafkaConfigProperties.getBatchSize());
props.put("linger.ms", kafkaConfigProperties.getLingerMs());
props.put("buffer.memory", kafkaConfigProperties.getBufferMemory());
props.put("key.serializer", kafkaConfigProperties.getKeySerializer());
props.put("value.serializer", kafkaConfigProperties.getValueSerializer());
//2、创建KafkaProducer
// org.apache.kafka.clients.producer.KafkaProducer<String, String> kafkaProducer = new org.apache.kafka.clients.producer.KafkaProducer<String, String>(props);
//3、发送数据
// kafkaProducer.send(new ProducerRecord<String, String>(topic, msg)); IEventHandle kafkaHandle = new KafkaEventHandle(props, topic);
kafkaHandle.process(msg);
}
}

2.消息发送接口

public interface MessageService {

    public void sendWhenShipUpdate(String value);
}

3.消息发送实现类

@Service
public class MessageServiceImpl implements MessageService {
@Autowired
private KafkaProducer kafkaProducer; @Override
public void sendWhenShipUpdate(String value) {
if(org.apache.commons.lang3.StringUtils.isBlank(value)){
throw new ApiException("船信息不能为空");
}
JSONObject message = new JSONObject();
message.put("dataType", "shipInfoUpdate");
JSONObject data = new JSONObject();
data.put("value", value);
message.put("data", data);
kafkaProducer.send("TransportDataUpdate", StringUtils.replaceBack(message.toJSONString().replace("\\",""))); }
}

4.代码中发送消息

messageService.sendWhenShipUpdate(s);

Kafka实践的更多相关文章

  1. php下kafka实践

    Kafka是一种高吞吐的分布式发布订阅消息系统 kafka安装和简单测试 安装kafka 下载 wget https://www-us.apache.org/dist/kafka/2.1.1/kafk ...

  2. Kafka实践1--Producer

    一.Kafka设计原理参考: http://blog.csdn.net/suifeng3051/article/details/48053965?locationNum=2 http://www.cn ...

  3. Kafka实践、升级和新版本(0.10)特性预研

    本文来自于网易云社区 一.消息总线MQ和Kafka (挡在请求的第一线) 1. 几个应用场景 case a:上游系统往下游系统推送消息,而不关心处理结果: case b:一份新数据生成,需要实时保存到 ...

  4. Kafka 实践

    问题描述 配置 Kafka-client 2.x, Spring-Kafka 默认配置 Kafka 三个partition, 使用KafkaListener按group消费. 现象 某天突然发现两个p ...

  5. python操作kafka实践

    1.先看最简单的场景,生产者生产消息,消费者接收消息,下面是生产者的简单代码. ------------------------------------------------------------ ...

  6. Kafka入门 --安装和简单实用

    一.安装Zookeeper 参考: Zookeeper的下载.安装和启动 Zookeeper 集群搭建--单机伪分布式集群 二.下载Kafka 进入http://kafka.apache.org/do ...

  7. 02_Kafka单节点实践

    1.实践场景 开始前的准备条件: 1) 确认各个节点的jdk版本,将jdk升级到和kafka配套的版本(解压既完成安装,修改/etc/profile下的JAVA_HOME,source /etc/pr ...

  8. kafka消费者

    from kafka import KafkaConsumer,TopicPartition import json scrapy_kafka_hosts = ["ip:端口", ...

  9. 【AI】微软人工智能学习笔记(一)

    数据分析平台 01|数据平台概况图示 上面图中所示就是微软人工智能数据平台的相关的技术. 02.1| Cortana Intelligence Suite 从上面图中可以看到, 其中有一个Cortan ...

随机推荐

  1. yield生成器

    def say_hi(): while True: print("before") ret0 = "返回值" msg = yield ret0 #yield后的 ...

  2. fdisk分区和挂载

    查看硬盘情况 fdisk -l 修改分区类型为LVM sudo fdisk /dev/sda (/dev/sda为对应的设备名,也可能是其它名字) 按n新建分区 按p选择主分区 按t改变分区的syst ...

  3. link标签实现给网页标题前加一个小图标favicon.ico

    使用方法如下:1.<link rel="shortcut icon " type="images/x-icon" href="./favicon ...

  4. ccf跳一跳

    才考完,没题目,先传代码... #include<stdio.h> #include<string.h> int main() { int flag=0; int a[105] ...

  5. 自用chrome+油猴脚本,使用迅雷下载百度云大文件,一键离线下载

    油猴是有名的火狐浏览器插件(Greasemonkey),当然也有Chrome版本(tampermonkey),甚至IE.Safari.Opera都有……虽然这些插件是由不同的开发者开发出来的,界面也可 ...

  6. 常用加密算法简单整理以及spring securiy使用bcrypt加密

    一.哈希加密 1.md5加密 Message Digest Algorithm MD5(中文名为消息摘要算法第五版) https://baike.baidu.com/item/MD5/212708?f ...

  7. [洛谷 P3239] [HNOI2015]亚瑟王

    [HNOI2015]亚瑟王 题目描述 小 K 不慎被 LL 邪教洗脑了,洗脑程度深到他甚至想要从亚瑟王邪教中脱坑.他决定,在脱坑之前,最后再来打一盘亚瑟王.既然是最后一战,就一定要打得漂亮.众所周知, ...

  8. 八、持久层框架(MyBatis)

    一.基于MyBatis的CRUD 1.首先是配置文件Category.xml修改 一次性修改配置文件Category.xml,提供CRUD对应的sql语句. <?xml version=&quo ...

  9. Hibernate 加载策略得总结

    Hibernate 加载策略得总结 加载策略(优化查询): 策略种类: 延迟加载: 等到使用的时候才会加载数据. 立即加载: 不管使用不使用,都会立刻将数据加载. 策略的应用: 类级别的加载策略. 关 ...

  10. JSP开发Web应用系统

    1.动态网站开发基础 1-1:动态网页 a.为什么需要动态网页(当我们需要修改网页内容的时候,都要重新上传一次覆盖原来的页面.而且,制作必须要通过专用的网页制作工具,比如:Dreamweaver.Fr ...