大数据技术之 Kafka (第 4 章 Kafka API ) Producer API

4.1.1 消息发送流程 

Kafka 的 Producer 发送消息采用的是异步发送的方式。在消息发送的过程中,涉及到了两个线程——main 线程和 Sender 线程,以及一个线程共享变量——RecordAccumulator。main 线程将消息发送给 RecordAccumulator,Sender 线程不断从 RecordAccumulator 中拉取消息发送到 Kafka broker。 

KafkaProducer 发送消息流程

相关参数: 
batch.size:只有数据积累到 batch.size 之后,sender 才会发送数据。 
linger.ms:如果数据迟迟未达到 batch.size,sender 等待 linger.time 之后就会发送数据。 


4.1.2 异步发送 API 

1)导入依赖 

<dependency> <groupId>org.apache.kafka</groupId> <artifactId>kafka-clients</artifactId> <version>2.4.1</version> 
</dependency> 

2)编写代码 
需要用到的类: 
KafkaProducer:需要创建一个生产者对象,用来发送数据 
ProducerConfig:获取所需的一系列配置参数 
ProducerRecord:每条数据都要封装成一个 ProducerRecord 对象 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/576406.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《关键对话——何谓关键对话》读书笔记(一)

《关键对话——何谓关键对话》读书笔记&#xff08;一&#xff09; 利用假期的时间&#xff0c;将关键对话阅读了一遍&#xff0c;书中提到的观点&#xff0c;方法&#xff0c;场景等很适合我目前处的状态&#xff0c;有的时候读起来仿佛就是自己身临其境&#xff0c;有种感同身…

从java读取Excel继续说大道至简 .

在上一篇博客《从复杂到简单&#xff0c;大道至简》中说道我们要把复杂的问题简单化&#xff0c;也就是要把问题细分&#xff0c;让大问题变成小问题&#xff0c;这样解决起来会相对容易&#xff0c;当我们把容易的小问题解决掉了&#xff0c;大问题自动就会迎刃而解。 所以今天…

推荐算法工程师的成长之道

推荐算法工程师的成长之道 原创&#xff1a; gongyouliu 大数据与人工智能 3月20日 源链接&#xff1a;原文地址 本文&#xff0c;作者会基于自己的实践经验讲述推荐算法工程师的成长之道&#xff0c;这里的“道”有发展路径和道(道理、方法论、经验、智慧)两层意思。 所以本文…

java电子商务源码解读 b2b2c o2o

大型企业分布式互联网电子商务平台&#xff0c;推出PC微信APP云服务的云商平台系统&#xff0c;其中包括B2B、B2C、C2C、O2O、新零售、直播电商等子平台。 分布式、微服务、云架构电子商务平台 java b2b2c o2o 技术解决方案 开发语言&#xff1a; java、j2ee 数据库&#x…

信息流推荐多样性

信息流推荐多样性 一、问题现状 信息流产品中一个常见的问题是多样性越来越差&#xff0c;造成这种问题的原因在于机器学习算法本身。下面通过一副系统循环图来介绍多样性差的问题。 资讯库随机推荐文章&#xff0c;由于是按照全库比例采样&#xff0c;娱乐占比较大&#xf…

Robocode教程2——你的第一个robo,取个好名字哦

摘自&#xff1a;http://site.douban.com/widget/notes/7736245/note/210029011/ 你需要准备的东西&#xff1a;1.c语言的知识和一点点的java知识&#xff0c;robocode意在学习java&#xff0c;不要要太深的java水平&#xff0c;你只要理解java和c的区别就可以了。2.robocode A…

UI设计师的面试过程

Palantir Technologies是一家提供分析、整合、可视化各种数据的IT型技术公司。在该公司&#xff0c;前端工程师和后端工程师有同样的面试过程&#xff0c;前端工程师也需要的一定的编程基础。该公司技术博客Palantir TeckBlog日前发表了一篇博文《The UI Design Interview》&am…

数据在市场运营中的应用

数据在市场运营中的应用 1. 背景 目前的产品运营、用户拉新、渠道投放、留存等都是靠人工进行策略制定&#xff0c;有的公司和部门完全靠着以前的经验在尝试互联网产品的市场营销和运营。这样不仅效率很低&#xff0c;而且效果也不显著。 主要存在的问题有以下几点&#xff…

信息流项目计划和思路

目录 一、对项目的认识. 4 1&#xff0e;用户需求和竞品. 4 2. 项目现状. 4 3. 发展前景. 4 二、项目的业务方向和思路. 6 1. 业务方向. 6 2. 2020年目标. 6 3. 思路. 6 3.1用户留存提升&#xff08;6%->12%&#xff09;. 6 3.2日活提升&#xff08;30万->80万…

MySQL学习笔记_关于MySQL的字符类型VARCHAR长度知识总结

MySQL学习笔记_关于MySQL的字符类型VARCHAR长度知识总结 一.VARCHAR存储和行长度限制 1.VARCHAR(N)中&#xff0c;N指的是字符的长度,VARCHAR类型最大支持65535,指的是65535个字节,但并不支持65535长度的varchar&#xff0c;65535中应该包含了所有字段的长度、变长字段长度标示…

链表的分类

分类: 单链表 双链表:每一个节点有两个指针域 循环链表&#xff1a;能通过任何一个节点找到其他所有的结点 非循环链表 链表中第一个结点的存储位置叫做头指针&#xff0c;那么整个链表的存取就必须是从头指针开始进行了。之后的每一个结点&#xff0c;其实就是上一个的后继指…

机器学习基础笔记总结

最近在学习latex&#xff0c;将之前的机器学习基础知识相关的笔记用latex整理了以下&#xff0c;源地址如下&#xff1a; https://github.com/duankai/latex_book&#xff0c;感兴趣的可以自由下载&#xff0c;也可以随意使用latex的格式。 pdf 效果如下&#xff0c;文件可在h…

IOS基础:ActionSheet(上拉菜单)的实现

一看图就明白了&#xff0c;毋需多说。 [java] view plaincopyprint?UIActionSheet* mySheet [[UIActionSheet alloc] initWithTitle:"ActionChoose" delegate:self cance…

Word2vec学习笔记总结

git地址&#xff1a; https://github.com/duankai/latex_book/tree/master/word2vec

创建链表和遍历链表算法演示

#include <stdio.h> #include <malloc.h> #include <string.h> #include <stdlib.h>typedef struct Node {int data; //数据域struct Node * pNext; //指针域}Node, *pNode;//函数声明 pNode create_list(); void traverse_list(pNode pHead); int…

@Autowired、@Resource

Autowired通过 Autowired的使用来消除 set &#xff0c;get方法 - Spring 2.5 JPA hibernate 使用方法的点滴整理我们编写spring 框架的代码时候。一直遵循是这样一个规则&#xff1a;所有在spring中注入的bean 都建议定义成私有的域变量。并且要配套写上 get 和 set方法。虽然…

SpringCloud 入门教程(七): 熔断机制 -- 断路器

对断路器模式不太清楚的话&#xff0c;可以参看另一篇博文&#xff1a;断路器&#xff08;Curcuit Breaker&#xff09;模式&#xff0c;下面直接介绍Spring Cloud的断路器如何使用。 SpringCloud Netflix实现了断路器库的名字叫Hystrix. 在微服务架构下&#xff0c;通常会有多…

ABTest系统调研和需求

一、AB测试的必要性 1.1 算法评估 线下可以使用离线的AUC&#xff0c;NDCG等指标进行算法模型的评估&#xff0c;算法上线后怎样进行算法间的评估&#xff0c;上线的算法是好是坏&#xff0c;好多少&#xff1f;坏多少&#xff1f; 要有效评估算法&#xff0c;必须借助AB测试…

SpringCloud 入门教程(八): 断路器指标数据监控Hystrix Dashboard 和 Turbine

1. Hystrix Dashboard (断路器&#xff1a;hystrix 仪表盘) Hystrix一个很重要的功能是&#xff0c;可以通过HystrixCommand收集相关数据指标. Hystrix Dashboard可以很高效的现实每个断路器的健康状况。 1&#xff09;. 在Ribbon服务g和Feign服务的Maven工程的pom.xml中都加…