问道飞鱼
长期从事服务后端开发,擅长微服务高并发架构设计, 熟悉云原技术栈,可以提供完整后端解决方案。
展开
-
【Springboot知识】Springboot基础-参数校验器使用
Spring Boot提供了多种内置的校验注解,如@NotNull、@NotEmpty、@NotBlank、@Email、@Max、@Min等,这些注解可以直接用于实体类的字段上,以指定字段的校验规则。在实体类中使用上述校验注解来定义字段的校验规则。@NotNull(message = "ID不能为空") @Min(value = 1 , message = "ID必须大于0") private Integer id;原创 2024-12-23 06:15:00 · 273 阅读 · 0 评论 -
【后端知识】Mockito,PowerMock结合TestNG框架实现复杂单元测试
Mockito 是一个强大的工具,能够帮助开发者轻松地进行单元测试,特别是在处理复杂依赖时。通过 Mock 对象,可以有效地隔离被测试的代码,提高测试的独立性和可控性。原创 2024-10-17 06:00:00 · 158 阅读 · 0 评论 -
【知识科普】一篇文章讲透限流与熔断
限流,全称为流量限制,主要指的是对某一系统或网络的流量进行监控和管理,以确保其使用在预定的范围内进行。这种限制可以是针对数据流量的速率、数量或者是对特定用户的访问进行限制。在实际应用中,限流通常用于保护网络、服务器或应用免受过大流量冲击的影响,从而确保服务的稳定性和安全性。基于速率的限流:这种方式通过限制单位时间内通过的数据量或请求数来实现。例如,可以设置每秒最多允许通过一定数量的请求或数据包。基于数量的限流:这种方式通过限制在特定时间段内允许通过的总数据量或请求数来实现。原创 2024-10-08 06:00:00 · 214 阅读 · 2 评论 -
微服务(Microservices),服务网格(Service Mesh)以及无服务器运算Serverless简单介绍
微服务(Microservices)是一种软件架构设计风格,它将应用程序构建为一套小型、自治的服务单元,这些服务单元通过轻量级的通信机制相互协作。定义:微服务架构将复杂的单体应用拆分为更小、更易管理的服务单元,每个服务都专注于单一的业务功能,并且可以独立部署、升级和扩展。特点模块化设计:系统被分解为多个独立的服务单元,每个服务单元都拥有自己的数据存储、业务逻辑和用户界面。自治性:每个微服务都是自治的,可以独立开发、部署和运行,不依赖于其他服务。松耦合。原创 2024-09-29 21:21:37 · 630 阅读 · 0 评论 -
【后端知识】服务治理组件Sentinel快速入门
Sentinel是阿里巴巴开源的一款分布式系统流量控制和容错解决方案,它以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。Sentinel在微服务架构和分布式系统中扮演着重要角色,帮助开发者有效应对高并发、服务故障等挑战。在Sentinel中,资源是限流、熔断等保护策略的作用对象。资源可以是任何需要被保护的代码块,如接口方法。通过代码定义资源使用来定义资源,其中是资源的名称。示例代码:@RequestMapping("/getuser")// 被保护逻辑。原创 2024-09-28 08:22:13 · 498 阅读 · 2 评论 -
springboot提升-kafka组件接入与使用
以上就是 Spring Boot 集成 Kafka 的基本步骤。当然,实际情况可能会更复杂,比如需要处理不同类型的序列化/反序列化、错误处理、事务支持等等。你可以在 Maven 中心仓库或者 Spring Kafka 的 GitHub 页面找到最新的版本号。最后,你可以通过单元测试或者集成测试来验证 Kafka 的发送和接收功能是否正常工作。接下来,你需要在 Spring Boot 的配置文件(如。如果你使用的是 Maven,可以在。你可以使用 Spring 提供的。首先,你需要在你的项目中添加。原创 2024-09-23 23:44:05 · 341 阅读 · 0 评论 -
【Java知识】java线程工具-CountDownLatch和CyclicBarrier使用详解
是一种用于线程间同步的工具类,它允许一个或多个线程等待其他线程完成操作。它的工作原理是通过一个计数器来控制,当计数器的值降为零时,所有等待的线程将被释放。中提供的同步辅助类,用于协调多线程程序中的线程执行顺序。尽管它们有相似之处,但各自的设计目的和使用场景有所不同。是一种可以让一组线程相互等待,直到最后一个线程到达屏障点时再一起执行的工具。都是 Java 并发编程中很有用的工具,选择哪种工具取决于具体的应用场景和需求。可以被重用,即当所有线程都到达屏障点后,都是 Java 并发包。可以被重置以供下次使用。原创 2024-09-21 00:10:31 · 408 阅读 · 0 评论 -
springboot基础-接入eureka服务发现
在 Spring Boot 应用中接入 Eureka 服务注册与发现是非常常见的做法,特别是当你正在构建一个基于微服务架构的应用时。如果你还没有配置 Eureka Server,你需要有一个运行中的 Eureka Server 实例。启动你的 Eureka Server 和你的 Spring Boot 应用,然后访问 Eureka Server 的 Web UI 页面(默认是。如果你的项目中已经包含了 Spring Cloud Starter,则上述依赖应该已经包含了必要的 Eureka 客户端。原创 2024-09-15 07:49:13 · 152 阅读 · 0 评论 -
springboot组件使用-mybatis组件使用
springboot, mybatis, mybatis注解, mybatisxml配置原创 2024-09-07 21:13:31 · 263 阅读 · 0 评论 -
【开发工具】git常见命令行及分支规范
Git 分支风格(Branching Model)是指团队在使用 Git 进行项目开发时所遵循的一套约定或模式。这些模式定义了如何管理和组织项目中的不同分支,以及如何在各个分支之间协作。不同的团队可以根据项目的大小选定不同的分支风格来进行分支管理。是一个分布式版本控制系统,用于跟踪计算机文件的更改,并协调多个用户之间的协作。它的核心理念是简化分支管理,减少分支数量,提高迭代速度。所有的开发工作都在这个分支上进行,适用于非常小的项目或个人项目。这种风格最简单,只有一个主要的分支,通常是。原创 2024-08-30 22:30:01 · 453 阅读 · 0 评论 -
【Spring知识】springboot后端开发-自定义参数校验器
首先需要定义一个自定义的注解,该注解将用于标记需要校验的字段。@Documented // 实现真正校验逻辑的验证器 @Constraint(validatedBy = NotAllEmptyValidator . class) // 注解放置于类上方 @Target({String message() default "不允许所有参数为空";Class原创 2024-08-22 22:18:46 · 312 阅读 · 0 评论 -
VM虚拟机+Ubuntu系统NAT网络配置
网络配置文件路径(/etc/netplan/[具体编号]-installer-config.yaml)ens33.addresses: 你给当前虚拟机配置的静态IP和子网掩码。ens33.routes: via指定你配置好的网关地址。此时的虚拟机可以与主机建立通信,也可以正常访问外网。两个地址同时测试成功, 则表示网络配置成功。ens33: 具体根据你当前的网卡编号。配置入口:编辑->虚机网络编辑器。再试一下网络是否通畅。最后查看一下是否生效。原创 2024-07-20 23:31:40 · 1027 阅读 · 0 评论 -
【Java知识】Java项目如何使用maven组件进行打包(经验证)
java项目打包的一些实践过程原创 2024-07-18 07:29:54 · 657 阅读 · 1 评论