- 博客(44)
- 收藏
- 关注
原创 Kafka Go客户端--Sarama
在Go语言中,有多个Kafka客户端可供选择,其中Sarama、segmentio/kafka-go和confluent-kafka-go是较为知名的三个。Sarama是目前用户数量最多的客户端,最初由Shopify开发,现由IBM维护。segmentio/kafka-go虽然没有显著缺点,但功能相对基础。confluent-kafka-go则需要启用cgo,跨平台支持较差,且不支持交叉编译。 Sarama提供了命令行工具,可以用于简单的消费者和生产者操作。安装Sarama工具时,可以通过设置Go代理来加速
2025-05-13 22:26:01
1584
原创 Kafka的基本概念和Dokcer中部署Kafka
Kafka是消息队列的一种实现,类似的还有RocketMQ 和 RabbitMQ这种形态下,生产者和消费者就解耦了。
2025-05-11 14:08:57
691
原创 Gin框架中Engine的作用
对象是框架的核心,承担着路由管理、中间件集成、请求处理链协调等核心职责。存储所有 HTTP 方法(GET/POST 等)对应的路由树,每个节点包含路径片段和处理链(错误恢复),中间件按注册顺序形成处理链,每个请求依次执行中间件逻辑。的数据结构中,实现高效路径匹配(时间复杂度 O(k))。会将路径和处理链挂载到对应 HTTP 方法的路由树中。对象,减少频繁创建销毁的性能损耗,提升高并发处理能力。管理所有路由规则,支持动态路由(如参数化路径。,封装请求和响应数据,提供参数解析(如。管理路由分组逻辑,通过。
2025-04-13 12:26:42
485
原创 Supervisor的安装和使用
在 CentOS 8 虚拟机环境中使用 Supervisor,不仅可以通过 pip 轻松安装和配置,还能借助 systemd 将其管理为系统服务,实现自动启动和故障恢复。通过合理的配置和日志管理,Supervisor 能够帮助你稳定、高效地运行和监控各类应用程序。
2025-04-05 16:19:23
1066
原创 RandomAccessFile详解
是 Java 中一个功能强大的文件访问类,它既可以读取文件,也可以写入文件,而且可以在文件的任意位置进行读写操作。它的名字 “Random Access” 表明了其最重要的特点:它允许用户在文件中随机访问任意位置的数据,既支持顺序操作,也支持非顺序(随机)操作。在一些应用场景下,例如日志文件、数据库文件、或者需要频繁读取和写入的文件时,的灵活性和随机访问能力使得它成为处理大文件、部分读取文件以及需要频繁定位和修改文件内容的理想工具。:可以分别读取 4 字节的整数、8 字节的长整数、8 字节的浮点数。
2024-09-26 11:33:47
1595
原创 静态代理和动态代理
静态代理适用于简单的场景,但在面对复杂需求时,动态代理更为合适。动态代理通过在运行时生成代理类,提供了极大的灵活性和扩展性,使得代码更具模块化和可维护性。它广泛应用于框架开发、AOP编程、RPC调用等领域,是Java编程中非常重要的技术手段。
2024-09-03 20:43:46
850
原创 Spring中事务失效的几种情况
在Spring中,事务管理是一个非常重要的功能,用于确保数据库操作的一致性和完整性。然而,有时候事务管理会失效,导致操作不能按照预期回滚或提交。
2024-08-04 21:23:49
1179
2
原创 @RequestParam,@PathVariable,@RequestBody三者分别适合在Get,Put,Post,Delete那种请求上使用,前端传数据的类型分别是json,x-www-form
这三个注解分别适合处理不同类型的请求和前端传递的数据格式。根据这些指导原则,可以根据请求的性质和数据传输的方式选择合适的注解来处理参数和数据。在Spring框架中,
2024-07-09 21:53:42
399
原创 为什么要继承 RuntimeException 而不是 Exception
通过继承类及其子类,你的自定义异常类将成为非受检异常,可以在不强制要求方法声明中抛出的情况下使用,提高了代码的灵活性和简洁性。这种设计使得异常处理在逻辑错误和运行时异常情况下更加方便和符合 Java 异常处理的最佳实践。
2024-07-07 20:22:36
501
原创 不能抛出异常,只能try-catch的几种情况
在Java编程中,某些情况下不能通过方法签名直接抛出检查型异常,而是需要在方法内部使用try-catch块来捕获和处理异常。这些情况主要包括重写父类方法、实现接口方法、lambda表达式和函数式接口、构造方法、静态初始化块等。这些限制通常是由于Java语言的设计规则和接口规范要求,目的是确保方法签名的一致性和异常处理的健壮性。
2024-05-21 21:50:20
804
1
原创 @RequestParam,@PathVariable和@Param注解三者的用法与区别
@RequestParam,@PathVariable和@Param注解三者的用法与区别
2023-05-20 20:39:07
935
原创 数据库外键
外键是一个指向另一张表格的字段,它的值必须与被指向的表格中的某个字段的值相同。需要注意的是,外键所引用的主键必须是唯一的,否则将无法确保数据的一致性和正确性。数据一致性:通过外键约束,可以确保在插入、更新或删除数据时,所引用的外键值必须存在于被引用表的主键值中,从而保证了数据的一致性。外键的主要作用是建立关系型数据库中的表之间的联系,保证数据的一致性和完整性。级联操作:外键还可以实现级联操作,例如当删除主表中某条记录时,其相关从表的记录也会被删除,从而达到级联删除的目的。外键可以由一个或多个字段组成。
2023-05-07 00:10:37
2416
原创 StringBuffer ,StringBulider,String三者之间的区别和Map遍历的四种方法
#StringBuffer ,StringBulider,String三者之间的区别和Map遍历的四种方法
2023-03-04 16:02:59
1371
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人