架构之路
文章平均质量分 71
两层含义:
1.从普通程序员到架构师的成长之路
2.从0到1完成系统架构设计之路
ゞ註﹎錠oo
做一个输出干货的优秀技术人,拒绝画大饼。
展开
-
数据分片查询方案
什么是数据分片?请自行百度。本文主要讨论的是数据分片后的查询方案。什么?肯定有人纳闷了,查询还需要什么方案?要是这么想就肤浅了。原创 2024-04-02 13:19:14 · 125 阅读 · 0 评论 -
spring-boot 整合 shardingsphere-jdbc、mybatis-plus 数据分片(文末有彩蛋)
Apache ShardingSphere 是一款分布式的数据库生态系统, 可以将任意数据库转换为分布式数据库,并通过数据分片、弹性伸缩、加密等能力对原有数据库进行增强。Apache ShardingSphere 设计哲学为 Database Plus,旨在构建异构数据库上层的标准和生态。它关注如何充分合理地利用数据库的计算和存储能力,而并非实现一个全新的数据库。它站在数据库的上层视角,关注它们之间的协作多于数据库自身。原创 2024-04-02 10:45:20 · 793 阅读 · 0 评论 -
spring-boot 整合 mybatis-plus 之数据范围(文末有彩蛋)
首先,大家应该都听说过垂直越权和水平越权?什么没有听过?通过上面描述相信大家已经了解什么是垂直权限和水平权限。两者各有不同,但又有共同点。就是越权访问原本没有权限访问的数据。本文主要讲解并提供数据范围权限的解决方案,希望能给大家带来一些帮助。原创 2024-03-25 09:43:16 · 333 阅读 · 0 评论 -
spring-boot 国际化 (续)(文末有彩蛋)
Hello 大家好,许久不见,之前的博客中有介绍国际化定义以及 spring-boot静态配置文件的国际化方式。这次会带入一些场景,引发一些新的讨论,并且给出对应的解决方案,或许能给大家带来一些帮助。原创 2024-03-25 09:36:44 · 308 阅读 · 0 评论 -
spring-boot 整合 netty 不一样的玩法(下)(文末有彩蛋)
固定长度粘包拆包基础类解码器基础类@Slf4j@Resource@Override@[email protected](">>>>>> 链接:{} 已断开,异常信息:{} >>>>>>", ctx.channel().id().asShortText(), cause.getMessage());@Overridelog.warn(">>>>>> 空闲链接:{} 已断开 >>>>>>", ctx.channel().id().asShortText());原创 2024-03-15 10:10:01 · 457 阅读 · 0 评论 -
spring-boot 整合 netty 不一样的玩法(下)番外
Protobuf,全称为Protocol Buffers,是Google开发的一种轻量级的数据交换格式。它是一种语言无关、平台无关的序列化机制,适用于数据存储和通信协议的定义。Protobuf的主要目标是提供高效的数据序列化和反序列化机制,使得数据在网络传输和存储时更加高效和可靠。原创 2024-03-15 09:53:15 · 825 阅读 · 0 评论 -
spring-boot 整合 netty 不一样的玩法(中)
多累人啊,没啥意义,都是些没价值的重复性工作,真正的重点应该放在业务数据的处理上(ChannelHandler)通过 @NettyHandler 注解,指定 handler 名称(与上面配置项的 name 对应)、order是加载和执行的顺序,按照实际情况编排。到这里,相信大家对开始的几个问题已经有了答案。3.根据业务的不同,不同协议上报的数据,处理的 ChannelHandler 也不同,有的甚至有多个 ChannelHandler。没错,就是一个列表配置,其中要注意的是 name,下面步骤会用到。原创 2024-03-08 11:30:36 · 420 阅读 · 0 评论 -
spring-boot 整合 netty 不一样的玩法(上)
这里就不介绍 Netty 了,新手或没有接触过 Netty 的同学可以自行百度(网上新手教程一大堆)。接下来的内容有一些难度,需要有一定的基础才能更好的了解和掌握。原创 2024-03-08 09:40:38 · 366 阅读 · 0 评论 -
spring-boot 整合 spring-boot-starter-validation 参数校验(文末有彩蛋)
Spring Validation 验证框架对参数的验证机制提供了 @Validated(Spring’s JSR-303 规范,是标准 JSR-303 的一个变种),javax 提供了 @Valid(标准 JSR-303 规范),配合 BindingResult 可以直接提供参数验证结果。其中对于字段的特定验证注解比如 @NotNull 等网上到处都有,这里不详述校验 Controller 的入参是否符合规范时,使用 @Validated 或者 @Valid 在基本验证功能上没有太多区别。原创 2024-03-01 17:35:20 · 941 阅读 · 0 评论 -
spring-boot 扩展 statemachine 状态机(文末有彩蛋)
状态机全称有限状态机,因为一般的状态机的状态都是离散而且可枚举的,这就是有限的原因。状态机表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型。通俗的描述状态机就是定义了一套状态変更的流程:状态机包含一个状态集合,定义当状态机处于某一个状态的时候它所能接收的事件以及可执行的行为,执行完成后,状态机所处的状态变化可以被感知。状态事件 状态机的状态变更肯定是通过触发一个事件引起的行为 触发了之后执行的业务逻辑。比如说订单未支付状态到支付状态的变更需要走的业务,写流水、修改账户余额等。原创 2024-03-01 17:39:37 · 432 阅读 · 0 评论 -
spring-boot 国际化 (文末有彩蛋)
国际化(Internationalization 简称 I18n,其中“I”和“n”分别为首末字符,18 则为中间的字符数)是指软件开发时应该具备支持多种语言和地区的功能。在 Spring 项目中实现国际化,通常需要以下 3 步:1.创建国际化资源(配置)文件2.使用 ResourceBundleMessageSource 配置指定资源文件3.获取国际化内容。原创 2024-02-29 16:47:42 · 344 阅读 · 0 评论 -
spring-boot 整合 spring-boot-starter-batch 数据批处理(文末有彩蛋)
Spring Batch 作为 Spring 的子项目,是一款基于 Spring 的企业批处理框架。通过它可以构建出健壮的企业批处理应用。不仅提供了统一的读写接口、丰富的任务处理方式、灵活的事务管理及并发处理,同时还支持日志、监控、任务重启与跳过等特性,大大简化了批处理应用开发,将开发人员从复杂的任务配置管理过程中解放出来,使他们可以更多地去关注核心的业务处理过程。原创 2024-02-29 16:16:34 · 1225 阅读 · 0 评论