📄🦌🙌🐟🏖️
日志记录
Where there is a where there is a way
随机文章
按住 Shift 横向滚动
热门文章
按住 Shift 横向滚动
SpringBoot集成Kafka

SpringBoot集成Kafka

本文是一篇Spring Boot集成Kafka的技术指南,涵盖快速入门与配置详解。首先介绍环境准备、项目结构、Maven依赖及核心配置(application.yml)。然后详细讲解Kafka配置,包括Producer(序列化器、acks、retries、batch-size等)、Consumer(groupId、auto-offset-reset、手动提交等)、Listener(ack-mode、并发、异常处理)及Admin。接着说明自定义Bean的创建方法(Topic、ProducerFactory、KafkaTemplate、ConsumerFactory)。此外,还介绍了拦截器用法及生产者/消费者核心API(发送、事务、幂等性、分区消费、批量处理、延迟消费等)。最后总结常见易错点,帮助开发者快速搭建可靠的消息系统。

Java操作Kafka

Java操作Kafka

本文介绍了Kafka 4.2+版本Java API的完整使用指南,涵盖快速入门(生产者、消费者配置与示例)、Topic管理(创建、查看、修改、删除)、生产者API(同步/异步发送、回调、指定分区、Header)、消费者API(手动提交、指定分区、控制数量)以及消费者组管理(列表、详情、偏移量查询与重置)。重点讲解了Kafka事务机制,包括事务概念、配置、原子性读写(消费-生产事务)、API详解及Fencing机制。强调事务需开启幂等性(`enable.idempotence=true`)、设置唯一`transactional.id`,消费端使用`read_committed`隔离级别,并通过`consumer.groupMetadata()`获取元数据而非手动构造。事务适用于金融、库存、CDC等需精确一次语义的场景,但会增加延迟,仅在必要时使用。

Kafka基础操作

Kafka基础操作

### 摘要 Kafka操作支持Web UI和命令行两种方式。Web UI通过Kafka-ui工具(Docker部署)可直观创建Topic(配置分区数、清理策略等)、发送消息(指定分区、Key/Value序列化及Header)等。命令行工具`kafka-topics`、`kafka-console-producer`和`kafka-console-consumer`提供更灵活的管理:创建/修改/删除Topic;发送消息时可配置确认机制、压缩、重试等;消费消息支持指定分区、偏移量重置、显示Key/Value/Header/Timestamp。消费者组管理通过`kafka-consumer-groups`查看组状态、重置偏移量(到最早/最新/指定偏移量/时间点等),并可删除组或导出偏移量。两种方式覆盖Kafka核心运维需求,适应不同场景。

Kafa基础介绍

Kafa基础介绍

Apache Kafka 是一款基于 ZooKeeper 协调的分布式消息系统,具有高吞吐、低延迟、持久化、可靠及容错等特点。它本质上是分布式日志系统与流处理平台的结合,消息被持久化存储,由消费者自主维护读取偏移量(offset)。其核心结构包括 Producer(发送消息)、Consumer(拉取消费)、Broker(服务器实例)、Topic(逻辑主题)、Partition(分区,提升并行度)及 Replication(副本,实现高可用)。分区中的 Leader 负责读写,Follower 同步数据。与 RabbitMQ 相比,Kafka 更适用于日志收集、流处理、用户行为跟踪等大数据场景,吞吐量极高。集群模式下,通过 ZooKeeper 协调,分区与副本机制确保数据安全与服务高可用。

CSS基础

CSS基础

CSS(层叠样式表)是一种用于描述HTML文档呈现的样式表语言,主要用于美化网页内容。CSS有三种引入方式:内部样式表(写在style标签内)、外部样式表(通过link引入.css文件)和行内样式(写在style属性中)。选择器用于查找标签并设置样式,包括标签选择器、类选择器、id选择器、通配符选择器等基本选择器,以及后代、子代、并集、伪类等复合选择器。文字控制属性涵盖字体大小、粗细、样式、行高、字体族、文本缩进、对齐方式、修饰线和颜色等。CSS具有继承性、层叠性和优先级三大特性。此外,还有背景属性(背景图、平铺、位置、缩放、固定)、显示模式(块级、行内、行内块)和盒模型(内容区域、内边距、边框线、外边距)等核心概念。

HTML进阶标签

HTML进阶标签

本文介绍了HTML中常用的布局与交互元素。列表分为无序列表(ul+li)、有序列表(ol+li)和自定义列表(dl+dt+dd)。表格通过table、tr、td/th构建,支持合并单元格(colspan/rowspan)和结构标签(thead、tbody等)。表单用form包裹,通过input、select、textarea等控件收集用户信息,并配合label增大点击范围;按钮可使用button或input。语义化布局标签如header、nav、main、footer等用于划分页面区域。此外,还介绍了字符实体(如<)和iframe框架用于嵌入其他网页。

HTML基础标签

HTML基础标签

本文介绍了HTML基础标签的使用。排版标签包括标题(h1-h6)、段落(p)、换行(br)和水平分割线(hr),均独占一行。文本格式化标签可加粗、倾斜、下划线、删除线。媒体标签中,图片(img)需设置src、alt等属性,音频(audio)和视频(video)支持多种格式,常用controls、autoplay、loop等属性。路径分绝对路径和相对路径,相对路径有同级、下级、上级目录之分。链接标签(a)通过href跳转,支持target(_blank等)和锚点功能。通用属性有class、id、style、title。head标签包含title、meta(字符集、视口、关键词等)、link、style、script等。掌握这些标签是构建网页的基础。

HTML基础认知

HTML基础认知

网页由文字、图片、音频、视频和超链接组成,通过前端代码经浏览器渲染引擎呈现。五大浏览器(IE、火狐、谷歌、Safari、Opera)使用不同渲染引擎,导致相同代码可能效果不同。为此,W3C制定了Web标准:HTML(结构)、CSS(表现)、JS(行为)。HTML(超文本标记语言)是专门用于网页开发的语言,通过标签描述内容。其骨架包括`<html>`(整体)、`<head>`(头部,含`<title>`标题)、`<body>`(身体)。HTML注释用于解释代码,浏览器会忽略。标签分为双标签和单标签,标签间存在嵌套或并列关系。

RabbitMQ进阶

RabbitMQ进阶

根据提供的文章内容,生成的摘要如下: 本文主要探讨了保障RabbitMQ消息可靠性的三大核心方面。首先,在**发送者可靠性**方面,通过生产者重试机制(处理网络故障)和生产者确认机制(Publisher Confirm/Return,处理路由失败或MQ内部异常)确保消息成功到达MQ。其次,在**MQ可靠性**方面,通过数据持久化(交换机、队列、消息)和LazyQueue惰性队列模式,保证消息在MQ内部不丢失且能应对消息积压。最后,在**消费者可靠性**方面,通过消费者确认机制(ack/nack/reject)、失败重试机制及策略(如投递到错误队列)、以及业务幂等性设计(唯一消息ID或业务状态判断),确保消息被正确且不重复地消费。此外,文章还介绍了利用死信交换机+TTL或DelayExchange插件实现**延迟消息**的方案。通过上述综合机制,可以构建一个高可靠的消息系统。

Java操作RabbitMQ

Java操作RabbitMQ

SpringAMQP是基于RabbitMQ的Spring消息收发模板,支持自动声明队列/交换机、注解监听器模式和RabbitTemplate工具。快速入门演示了直接发送消息到队列;WorkQueue模型通过多消费者绑定同一队列实现能者多劳,可通过prefetch控制预取数量。交换机类型包括Fanout(广播)、Direct(基于路由键精准分发)和Topic(支持通配符匹配路由键)。推荐使用程序自动声明队列和交换机,支持@Bean或@RabbitListener注解方式。消息转换器默认使用JDK序列化,建议替换为Jackson2JsonMessageConverter以提升性能、安全性和可读性,并自动生成消息ID用于幂等性判断。

© 2026 日志记录