![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
中间件
java 日常工作种的中间件
二老付
理论写着写着就明白了
展开
-
kafka-10--springboot集成kafka
Springboot 集成kafka1.创建springboot项目并引入依赖<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.5.RELEASE</version> </pa原创 2020-06-28 16:53:45 · 171 阅读 · 0 评论 -
kafka-9--java-事务控制
kafka事务控制kafka在0.11.0.0在引入幂等性概念的同时也引入了事务的概念。一般来说默认消费者消费的信息级别是read_uncommited数据;这有可能读取到事务失败的数据,所以在开启生产者事务之后,需要用户设置消费者的事务隔离级别1.创建生产者并开启事务控制public class KafkaProducerTranactions { public static void main(String[] args) { KafkaProducer<Stri原创 2020-06-28 15:27:15 · 502 阅读 · 0 评论 -
kafka-7--java-应答及重试
kafka应答及重试策略kafka在生产者发送完一个消息之后,要求broker在规定的时间内Ack应答;如果没有在规定时间内ack;生产者会尝试n次重新发送消息。acks=1 (默认)Leader会将Record写在其本地日志中;但不会等待所有Follower的完全确认的情况下做出响应,这种情况下,如果Leader在确认记录后立即失败,在Follower复制记录之前失败,则记录会丢失acks=0 生产者不等待服务器确认,将记录加载到缓冲区即视为发送;这种情况不能保证服务器已收到记录acks=all原创 2020-06-28 14:47:52 · 376 阅读 · 0 评论 -
kafka-6--java-偏移量
一个kafka消费者实例在对未订阅的topic的offset的首次消费策略默认:latest - latest - 自动将偏移量重置为最新的偏移量 - earliest - 自动将偏移量重置为最早的偏移量 - none - 如果未找到消费者组的先前偏移量,则像消费者抛出异常原创 2020-06-28 14:04:46 · 609 阅读 · 0 评论 -
kafka5--java-自定义序列化及反序列化
完成对序列化接口的自定义一般在我们开发过程中我们传输的可能是一个对象,不再是单纯的String,这就要求我们能够对一个对象直接进行序列化完成传输1.创建实体类//必须实现Serializable接口public class User implements Serializable { private Integer id; private String name; private Date birthDay; public User() { }原创 2020-06-28 14:03:54 · 407 阅读 · 0 评论 -
kafka-4--java-自定义拦截器
完成自定义拦截器实际开发工作中可能要求我们在生产者发送信息之前统一打一个标记或者修改一个类型就可以用到拦截器1.创建生产者拦截器public class UserDefineInterceptor implements ProducerInterceptor { @Override public ProducerRecord onSend(ProducerRecord record) { System.out.println("发送之前record会在这里,我们可以原创 2020-06-28 14:03:06 · 149 阅读 · 0 评论 -
kafka-3--java-生产者与消费者
创建kafka生产者public class KafkaProducerQuickStart { public static void main(String[] args) { Properties props = new Properties(); props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG,"ip:9092"); //设置生产者对key的序列化 props.put(Pro原创 2020-06-28 14:02:04 · 154 阅读 · 0 评论 -
kafka-2-- java-基本操作
创建一个maven项目 引入依赖jar<dependencies> <dependency> <groupId>org.apache.kafka</groupId> <artifactId>kafka-clients</artifactId> <version>2.5.0</version> </dep原创 2020-06-28 14:01:06 · 229 阅读 · 0 评论 -
kafka-8--java-幂等性
kafka幂等性幂等性:一次和多次请求某一个资源,资源本身应该具有同样的结果(网络超时等问题除外);即:其任意多次执行对资源本身所产生的影响均与一次执行的影响相同。kafka幂等性:0.11.0.0版本开始支持幂等性幂等是针对生产者角度的特性;可以保证生产者发送的信息不丢失;不重复。kafka幂等的关键就是服务端可以区分请求是否重复,过滤掉重复请求。服务端区分请求的两点要求:唯一标识 - - 要想区分请求是否重复,请求中就得有唯一标识;例如:支付请求中的订单号就是唯一标识。记录下已处原创 2020-06-28 13:59:43 · 273 阅读 · 0 评论 -
kafka-1--linux-环境单机部署
kafka 安装包下载jdk安装包下载zookeeper安装包下载kafka安装包下载安装java环境1.上传jdk安装包到 /usr 下2.解压安装包tar -zxvf /usr/jdk-8u231-linux-x64.tar.gz3.配置环境变量vi /etc/profile#编辑profile文件将下面java环境变量配置到文档末尾中#set java environmentJAVA_HOME=/usr/jdk1.8.0_231PATH=$PATH:$JAVA_HOM原创 2020-06-24 18:18:46 · 217 阅读 · 0 评论