摘要: 接手了一个外包开发的项目,我感觉我的头快要裂开了~ 嗨,大家好,我是飘渺。 最近,我和小伙伴一起接手了一个由外包团队开发的微服务项目,这个项目采用了当前流行的Spring Cloud Alibaba微服务架构,并且是基于一个“大名鼎鼎”的微服务开源脚手架(附带着模块代码截图,相信很多同学一看就能认出来)。然而,在这段时间里,我受到了来自"外包"和"微 阅读全文
posted @ 2023-10-20 13:53 JAVA日知录 阅读(5094) 评论(36) 推荐(5) 编辑
摘要: 大家好,我是飘渺。今天继续更新DDD&微服务的系列文章。 在专栏开篇提到过DDD(Domain-Driven Design,领域驱动设计)学习起来较为复杂,一方面因为其自身涉及的概念颇多,另一方面,我们往往缺乏实战经验和明确的代码模型指导。今天,我们将专注于DDD的分层架构和实体模型,期望为大家落地 阅读全文
posted @ 2023-06-08 14:23 JAVA日知录 阅读(4270) 评论(11) 推荐(6) 编辑
摘要: 今天我们来讨论如何在项目开发中优雅地使用RocketMQ。本文分为三部分,第一部分实现SpringBoot与RocketMQ的整合,第二部分解决在使用RocketMQ过程中可能遇到的一些问题并解决他们,第三部分介绍如何封装RocketMQ以便更好地使用。 1. SpringBoot整合RocketM 阅读全文
posted @ 2023-04-10 08:57 JAVA日知录 阅读(13374) 评论(7) 推荐(8) 编辑
摘要: 大家好呀,我是飘渺! 通过上篇文章我们知道了一个结论:那就是对于toC的业务,需要选择用户属性如 user_id 作为分片键。 那问题来了,对于订单表来说,选择了user_id作为分片键以后如何查看订单详情呢?比如下面这样一条SQL: SELECT * FROM T_ORDER WHERE orde 阅读全文
posted @ 2023-04-07 09:38 JAVA日知录 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 很早以前,我曾写过两篇介绍如何在SpringBoot中使用Guava和Redis实现接口限流的文章。具体包括: 使用Guava实现单机令牌桶限流 使用Redis实现分布式限流 现在,一个问题摆在我们面前:如何将这两种限流机制整合到同一个组件中,以便用户随时切换呢? 显然,我们需要定义一个通用的限流组 阅读全文
posted @ 2023-04-06 13:49 JAVA日知录 阅读(404) 评论(0) 推荐(0) 编辑
摘要: 大家好,我是飘渺。 在SpringBoot 如何进行限流,老鸟们都这么玩的!一文中我们详细介绍了为什么需要对接口进行限流,也介绍了常见的限流算法,最后还基于Guava工具类实现了接口限流。但是这种方式有个问题,无法实现分布式限流。那今天我们来利用Redis + Lua 来实现分布式限流。 Lua 脚 阅读全文
posted @ 2023-04-06 08:37 JAVA日知录 阅读(746) 评论(1) 推荐(0) 编辑
摘要: 大家好,我是飘渺。 在日常的接口开发中,为了保证接口的稳定安全,我们一般需要在接口逻辑中处理两种校验: 参数校验 业务规则校验 首先我们先看看参数校验。 参数校验 参数校验很好理解,比如登录的时候需要校验用户名密码是否为空,创建用户的时候需要校验邮件、手机号码格式是否准确。 而实现参数校验也非常简单 阅读全文
posted @ 2023-04-04 14:59 JAVA日知录 阅读(2400) 评论(24) 推荐(1) 编辑
摘要: 大家好,我是飘渺。SpringBoot老鸟系列的文章已经写了四篇,每篇的阅读反响都还不错,那今天继续给大家带来老鸟系列的第五篇,来聊聊在SpringBoot项目中如何对接口进行限流,有哪些常见的限流算法,如何优雅的进行限流(基于AOP)。 首先就让我们来看看为什么需要对接口进行限流? 为什么要进行限 阅读全文
posted @ 2021-10-11 11:50 JAVA日知录 阅读(2213) 评论(7) 推荐(3) 编辑
摘要: 大家好,我是飘渺。 今天带来SpringBoot老鸟系列的第四篇,来聊聊在日常开发中如何优雅的实现对象复制。 首先我们看看为什么需要对象复制? 为什么需要对象复制 如上,是我们平时开发中最常见的三层MVC架构模型,编辑操作时Controller层接收到前端传来的DTO对象,在Service层需要将D 阅读全文
posted @ 2021-09-23 14:46 JAVA日知录 阅读(1488) 评论(0) 推荐(2) 编辑
摘要: 大家好,我是飘渺。 SpringBoot老鸟系列的文章已经写了两篇,每篇的阅读反响都还不错,果然大家还是对SpringBoot比较感兴趣。那今天我们就带来老鸟系列的第三篇:集成Swagger接口文档以及Swagger的高级功能。 文章涉及到的代码已经上传到了github,希望最终能应用在你们实际项目 阅读全文
posted @ 2021-09-13 15:56 JAVA日知录 阅读(3422) 评论(1) 推荐(1) 编辑