Spring Boot 防抖动
前言 作为一名老码农,在开发后端Java业务系统,包括各种管理后台和小程序等。在这些项目中,我设计过单/多租户体系系统,对接过许多开放平台,也搞过消息中心这类较为复杂的应用,但幸运的是,我至今还没有遇到过线上系统由于代码崩溃导致资损的情况。这其中的原因有三点:一是业务系统本身并不复杂;二是我一直遵循某大厂代码规约,在开发过程中尽可能按规约编写代码;三是经过多年的开发经验积累,我成为了一名熟...
前言 作为一名老码农,在开发后端Java业务系统,包括各种管理后台和小程序等。在这些项目中,我设计过单/多租户体系系统,对接过许多开放平台,也搞过消息中心这类较为复杂的应用,但幸运的是,我至今还没有遇到过线上系统由于代码崩溃导致资损的情况。这其中的原因有三点:一是业务系统本身并不复杂;二是我一直遵循某大厂代码规约,在开发过程中尽可能按规约编写代码;三是经过多年的开发经验积累,我成为了一名熟...
开源框架中常见的命名习惯 为了让大家更好的理解命名的套路,我借鉴了最流行的 Java 接开源软件( spring 系列,netty, libgdx , guava , logback 等等),总结了10类常见的类命名。大多数是以后缀形式存在的,也有不少可以组合使用,用来表达多重的意义。 这些单词很简单,但可以让你的类命名看起来更加清爽和专业。接下来,我将带大家游览一遍。为了方便理解,...
🛠️ 简单工厂模式 (Simple Factory Pattern) 深度解析 1. 模式动机与定义 1.1. 模式动机:集中管理对象创建 在软件应用中,当我们需要使用一组源自同一个基类的对象时(如不同外观的按钮、不同类型的图表等),如果客户端代码直接使用 new 关键字创建这些对象,会导致: 客户端需要知道所有具体产品类的名字和创建细节。 创建逻辑分散在客户端各处,难以维...
🛡️ 代理模式 (Proxy Pattern) 深度解析 1. 模式动机 1.1. 模式动机:实现间接引用与控制 在某些情况下,一个客户端不想或者不能直接引用一个目标对象(真实主题)。此时可以通过一个称之为**“代理”**的第三者来实现间接引用。 通过引入代理对象,可以在客户端和目标对象之间起到中介的作用,并实现以下目标: 控制访问:通过代理对象去掉客户不能看到的内容和服务,...
Cassandra数据压缩机制 压缩数据的步骤: 判断是否符合压缩条件 如果SSTable 的数量足够,就将需要压缩的 SSTable 文件按照大小进行分组 对于已经分组的SSTable文件,如果数量满足压缩的要求,取分组中的前max_compaction_threshold 个SSTable文件执行压缩 Cassandra在对SSTable执行数据压缩的过程如下: ...
总结: ======================== 详见正文:SpringBoot生命周期事件——BAT的乌托邦 前言 本文将以SpringApplication的启动流程/生命周期各时期发出的Event事件为主线,结合每个生命周期内完成的大事记介绍,真正实现一文让你总览Spring Boot的全貌,这对你深入理解Spring Boot,以及整合进Spring Cloud都...
cassandra配置,启动与集群 Cassandra的配置详解 了解一个软件的配置项的意义是使用这个软件的前提, 这里详细介绍casserole的配置文件 (storage-config.xml) 中各个配置项的意义, 这其中包含有很多配置参数, 我们可以对其进行调整以达到理想的性能. 为了节省篇幅这里没有列出 storage-config.xml 文件的内容. clusterNam...
java中的锁 https://www.cnblogs.com/JackpotHan/p/9674399.html#%E5%85%AC%E5%B9%B3%E9%94%81%E5%92%8C%E9%9D%9E%E5%85%AC%E5%B9%B3%E9%94%81 公平锁和非公平锁 公平锁是指多个线程在等待同一个锁时,必须按照申请锁的先后顺序来一次获得锁。 公平锁的好处是等待锁的线程不会...
1. 概述 相比 HTTP 协议来说,WebSocket 协议对大多数后端开发者是比较陌生的。相比来说,WebSocket 协议重点是提供了服务端主动向客户端发送数据的能力,这样我们就可以完成实时性较高的需求。例如说,聊天 IM 即使通讯功能、消息订阅服务、网页游戏等等。 同时,因为 WebSocket 使用 TCP 通信,可以避免重复创建连接,提升通信质量和效率。例如说,美团的长连接服...
参考文章: Spring AOP切面表达式详解: https://blog.csdn.net/xubo_ob/article/details/78182014 Spring AOP中pointcut 表达式详解: https://www.cnblogs.com/rainy-shurun/p/5195439.html 说说 Spring AOP 中 @Aspect 的高级用法: http...