- 博客(95)
- 资源 (1)
- 问答 (3)
- 收藏
- 关注
原创 Claude code skills官方版
安装官方skills在claude会话中打开/plugin marketplace add anthropics/skills安装插件后,你只需提及这个技能即可使用。比如,如果你从市场安装插件,可以让 Claude Code 做类似的作:“使用 PDF 技能提取表单字段 document-skillspath/ to/some-file.pdf "Claude Code Skills 完整清单。
2026-01-11 17:33:09
676
原创 康威定律对微服务的启示
│ 5人 │ │ 4人 │ │ │ │ │。│ 4人 │ │ 3人 │ │ │ │ │。│ 订单组 │ │ 支付组 │ │ 订单服务 │ │ 支付服务 │。│ 用户组 │ │ 商品组 │ │ 用户服务 │ │ 商品服务 │。│ 开会沟通 │。
2025-12-17 16:05:10
837
原创 OAuth2 单点登录流程图
步骤首次登录二次登录(已登录)1访问应用访问应用2跳转认证中心跳转认证中心3显示登录页跳过(检测到Cookie)4输入账号密码跳过5设置Cookie + 生成code直接生成code6重定向回应用重定向回应用7code换tokencode换token8登录成功登录成功(无感知)
2025-12-17 12:00:59
1085
原创 Spec-Kit 使用指南
Spec-Kit是 GitHub 官方开源的规范驱动开发工具包,旨在改变传统的 AI 编码方式。官方仓库支持的 AI 工具: Claude Code、GitHub Copilot、Cursor、Gemini CLI、Windsurf 等Spec-Kit 的核心价值从 “Vibe Coding” 到 “Spec-Driven”:让 AI 编码更可控规范即合约:AI 必须遵循规范,减少沟通成本结构化流程:每个阶段有明确输出,可追溯质量门禁:在实现前发现问题,减少返工推荐使用场景复杂业务功能开发。
2025-11-29 14:26:35
1981
原创 代码规范 spring-javaformat使用
本文介绍了两种使用Spring Java Format插件格式化代码的方法。第一种通过Maven插件配置,在pom.xml中添加spring-javaformat-maven-plugin,执行mvn命令即可格式化。第二种为IDEA插件安装方式,需手动下载jar包并安装,安装后可通过快捷键Ctrl+Alt+L或配置保存时自动格式化代码。两种方法均简单易行,能有效规范代码风格。
2025-11-15 14:15:44
343
原创 什么是服务网格?
服务网格:微服务通信的智能基础设施 服务网格(Service Mesh)是云原生领域的核心组件,专注于解决微服务间通信的通用问题。它将服务发现、负载均衡、加密、流量治理等非业务逻辑从代码中剥离,下沉到独立的基础设施层,通过数据平面(Sidecar代理如Envoy)和控制平面(如Istio)协同实现以下能力: 核心价值 可靠性:自动重试、熔断、超时控制,提升系统容错性。 安全性:默认mTLS加密、服务身份认证,实现零信任架构。 流量治理:支持灰度发布、A/B测试、跨集群流量调度。 可观测性:无侵入采集全链路指
2025-10-15 14:09:24
579
原创 Spring框架中@Configuration的使用
在Spring框架中,@Configuration(proxyBeanMethods = false)与@Configuration(proxyBeanMethods = true)(默认值)的核心区别在于是否通过CGLIB代理配置类以管理Bean的依赖关系和生命周期。Bean间存在方法调用依赖 true (Full模式) 确保依赖注入的是容器单例,避免重复创建对象(如yourBean()调用myBean())。• 每次调用返回新实例:若方法A调用方法B,每次均执行方法体并生成新对象(非单例)。
2025-07-31 16:43:31
435
原创 @SentinelResource 使用
是使用 Sentinel 做方法级限流/熔断的关键注解,合理配合控制台配置规则、降级方法(fallback)和限流处理器(blockHandler)可以让你的服务具备强大的稳定性和自恢复能力。
2025-07-24 14:13:47
832
原创 Dubbo 的线程模型
是最优组合,通过 I/O 线程与业务线程的彻底分离保障系统稳定性。若业务逻辑简单且响应数据大,可选用 Message 模型提升网络效率。同时,结合线程池隔离、异步化改造和实时监控,可进一步提升吞吐量和容错能力。根据搜索结果,Dubbo 提供了多种线程模型(Dispatcher 策略),其核心差异在于。,但需根据具体业务特点进行权衡。在 Dubbo 的线程模型中,
2025-05-19 10:13:20
618
原创 一文讲清DDD
严格分层架构:某层只能与直接位于的下层发生耦合。松散分层架构:允许上层与任意下层发生耦合。在领域驱动设计(DDD)中采用的是松散分层架构,层间关系不那么严格。每层都可能使用它下面所有层的服务,而不仅仅是下一层的服务。每层都可能是半透明的,这意味着有些服务只对上一层可见,而有些服务对上面的所有层都可见。有很多人把DDD当成一种技术架构,甚至是微服务拆分的理念,两者的核心差异在于:MVC 是技术分层(解决代码组织问题),DDD 是业务分层(解决复杂业务建模问题)。
2025-03-15 17:44:28
740
原创 表分区应用场景
在MySQL中,**哈希分区(HASH)、键分区(KEY)和列表分区(LIST)**各有其适用的业务场景,具体选择需结合数据分布特点、查询模式和管理需求。
2025-03-05 10:00:08
529
原创 使用 OAuth 2.0 实现单点登录二
通过上述流程,子应用 A 和子应用 B 在同一浏览器中可以共享登录状态,实现无缝的单点登录体验。这种模式是 OAuth 2.0 最常用的实现方式之一,结合 OpenID Connect 的用户身份验证扩展效果更佳。
2025-01-09 13:52:40
1187
原创 使用 OAuth 2.0 实现单点登录(SSO)
使用 OAuth 2.0 实现单点登录(SSO)时,多个子应用共享同一登录状态,可以通过以下方式实现。
2025-01-09 13:48:13
2397
1
原创 Helm 是什么
Helm 是 Kubernetes 的包管理工具,被称为 Kubernetes 的 “Yum” 或 “APT”。通过 Helm,可以以一种声明式的方式定义和部署复杂的 Kubernetes 应用,同时便于升级和回滚。Helm 是一个功能强大且灵活的 Kubernetes 包管理工具,可以大幅提高部署效率和管理能力。无论是快速部署基础设施,还是构建和管理复杂的微服务架构,Helm 都是不可或缺的工具之一。下的模板文件,设置应用的默认参数和模板逻辑。
2025-01-09 12:01:57
1036
原创 Helm 是什么
Helm 是 Kubernetes 的包管理工具,被称为 Kubernetes 的 “Yum” 或 “APT”。通过 Helm,可以以一种声明式的方式定义和部署复杂的 Kubernetes 应用,同时便于升级和回滚。Helm 是一个功能强大且灵活的 Kubernetes 包管理工具,可以大幅提高部署效率和管理能力。无论是快速部署基础设施,还是构建和管理复杂的微服务架构,Helm 都是不可或缺的工具之一。下的模板文件,设置应用的默认参数和模板逻辑。
2025-01-01 16:16:28
879
原创 Dubbo 3.x 对比 Dubbo 2.x
特性Dubbo 2.7Dubbo 3.x协议支持Dubbo 协议Triple 协议 + Dubbo 协议 + gRPC云原生支持部分适配 Kubernetes原生支持 Kubernetes 和 Service Mesh异步和响应式编程异步支持不够完善全面支持 CompletableFuture 和响应式跨语言互操作性依赖 Dubbo 协议Triple 协议实现更好跨语言支持性能优化GC 和协议性能有局限性HTTP/2、多路复用、大幅提升性能服务治理基础功能动态路由、分级流量治理更强可观测性。
2024-12-16 15:48:55
1533
原创 maven-compiler-plugin 3.10.1 与 3.8.1
特性支持的 JDK 版本JDK 8 到 JDK 12JDK 8 到 JDK 21release参数支持基础支持,高版本需手动配置完全支持,自动适配高版本新语言特性支持不支持records支持所有现代 Java 特性模块化项目支持(JPMS)部分支持完全支持性能优化普通性能更高的编译性能,适合大项目兼容性更适合旧版本的 JDK 和工具链更适合现代化工具链和开发环境Bug 修复和改进较少修复包含了多个 Bug 修复如果你的项目需要使用现代化的 JDK(如 JDK 17 或 21),推荐使用。
2024-12-16 15:47:33
2578
原创 布隆过滤器
布隆过滤器(Bloom Filter)是一种概率型数据结构,用于判断某个元素是否存在于一个集合中。如果布隆过滤器判断元素不存在,那么这个元素一定不存在。如果布隆过滤器判断元素存在,可能存在误判的情况(即误判为存在,但实际上不存在)。布隆过滤器在Spring Boot中的使用主要依赖于其快速判断能力,可以有效解决缓存穿透和其他判定问题。对于本地使用,Google Guava足够简单高效;对于分布式场景,Redis Bloom是更优的选择。
2024-12-11 10:58:38
655
原创 位(bit)、字节(byte) 和 字符(character)
*位(bit)**是数据的最小单位,表示0或1。**字节(byte)**是由8位组成的存储单位,用于存储数据。**字符(character)**是数据的语义表示,与编码方式相关,不同编码方式占用的字节大小不同。了解位、字节和字符的区别与联系有助于理解数据存储和传输的底层机制。
2024-12-11 10:57:20
2615
原创 基于springboot使用Caffeine
Caffeine 是一个高性能的本地缓存库,具有灵活的配置和优秀的性能表现,非常适合需要高效缓存的 Java 应用场景。如果你需要一个轻量级、高效的缓存解决方案,Caffeine 是一个绝佳的选择。开发,受 Google Guava 缓存库的启发,但具有更好的性能和更多的功能。是一个基于 Java 的高性能、现代化的缓存库。
2024-12-10 16:54:20
1111
原创 Springfox迁移到 Springdoc OpenAPI 3
时,主要的工作是将原先使用的 Springfox 注解替换为 Springdoc OpenAPI 3 中的对应注解。虽然 Springdoc OpenAPI 3 基于 OpenAPI 3 规范,并且有一些不同的命名方式和设计理念,但大部分注解的功能是类似的。迁移时,主要是将 Springfox 中的注解替换为 Springdoc 中对应的注解,并根据 OpenAPI 3 的规范调整 API 文档描述。在 Springfox 和 Springdoc 中的功能是相同的,用来描述接口的多个响应状态和返回类型。
2024-11-29 16:59:02
1322
原创 Springfox、Swagger 和 Springdoc
对于新项目,推荐使用 Springdoc;对于维护中的老项目,可以逐步迁移到 Springdoc,以便享受最新功能和更好的兼容性。
2024-11-28 16:47:54
1644
原创 Spring Boot 与 Spring Cloud Alibaba 版本兼容对照
版本选择要点Spring Boot 3.x 与 Spring Cloud Alibaba 2022.0.xSpring Boot 3.x 基于 Jakarta EE,javax.* 更换为 jakarta.*。需要使用 SpringCloud 2022.0.x 和 Spring Cloud Alibaba 2022.0.x。Alibaba 2022.0.x 对Spring Boot 3.x 的支持在其发行说明中明确。Spring Boot 2.7.x 与 Spring Cloud。
2024-11-26 10:53:59
1910
原创 java启动命令原理
java -jar命令是 Java 命令行工具的一部分,用于执行包含主类(即包含方法的类)的 JAR 文件。要理解java -jar。
2024-11-24 17:15:38
366
原创 Java 技术规范
Java 技术规范是由 Java 社区过程 (Java Community Process, JCP) 维护的一系列文档,它们定义了 Java 平台的各种方面,包括语言特性、API、工具等。: 定义了 Java SE 平台提供的所有标准 API,包括核心库、GUI 工具包(如 Swing 和 JavaFX)、网络、数据库连接(JDBC)等。: 定义了一组用于企业级应用的标准,如 Servlets、JSP、EJB、JPA、JSF 等。: 定义了 Java 应用程序访问命名和目录服务的方式,如 LDAP。
2024-11-24 17:11:25
599
原创 微服务透传日志traceId
在微服务架构中,一次业务执行完可能需要跨多个服务,这个时候,我们想看到业务完整的日志信息,就要从各个服务中获取,即便是使用了ELK把日志收集到一起,但如果不做处理,也是无法完整把一次业务请求的日志完整链路串联起来。有人说,可以在日志中加入某个业务参数,比如订单id等,但是不可能所有业务都是有这样的参数给你用的。
2024-11-04 16:26:05
1355
原创 Spring Boot 集成 Elasticsearch入门教学
Elasticsearch 是一个分布式搜索引擎,用来处理大规模数据的存储、搜索和分析。它是基于 Apache Lucene 构建的,具备高效的全文搜索功能。ES 可以在海量数据中快速找到匹配的内容,并且支持复杂的查询逻辑,非常适合用于日志分析、商品搜索、数据可视化等场景。
2024-10-11 18:01:59
1018
1
原创 语义化版本
版本格式:主版本号.次版本号.修订号,版本号递增规则如下:主版本号:当你做了不兼容的 API 修改,次版本号:当你做了向下兼容的功能性新增,修订号:当你做了向下兼容的问题修正。先行版本号及版本编译信息可以加到“主版本号.次版本号.修订号”的后面,作为延伸
2024-08-05 10:00:02
964
原创 ABAC模型
ABAC模型通过属性和策略的灵活组合,实现了比传统RBAC更细粒度和动态的访问控制。在复杂和动态变化的环境中,ABAC可以提供更强的灵活性和安全性。通过结合RBAC和ABAC,可以设计出更加健壮和适应性强的权限管理系统。ABAC模型提供了比传统RBAC更灵活和精细的访问控制方式,适用于复杂、多变的权限需求场景。通过引入多种属性并动态评估权限,ABAC能够实现更强大和细粒度的访问控制策略。
2024-07-05 10:23:45
2140
原创 Spring Boot、Nacos配置文件properties、yml、yaml的优先级
yaml跟yml具有相同的作用,但是优先级也有区别,yaml比yml先加载,所以,yml会覆盖yaml。properties(最高)> yml > yaml(最低)
2024-03-05 10:59:48
2240
原创 基于git flow规范的代码版本管理
基于git flow规范Master分支是仓库的主分支,这个分支包含最近发布到生产环境的代码,最近发布的Release, 这个分支只能从其他分支合并,不能在这个分支直接修改master这个分支是我们的主开发分支,包含所有要发布到下一个Release的代码,这个主要合并与其他分支,比如Feature分支develop:用于集成所有功能开发。
2024-02-27 11:39:13
868
1
原创 Sentinel spring的全局异常处理器,导致熔断规则(异常数规则)失效解决方案
在使用sentinel过程中,还需要将规则持久化才能投入生产,持久化的方案有好几种,推荐使用nacos,但是直接在nacos里手写配置的话也是不够友好的
2023-06-20 11:20:40
1821
5
谷歌AI agent 白皮书,中英文对照版
2025-11-19
nginx配置https,javaweb前后分离项目
2018-10-04
ajax回调问题ajax回调问题ajax回调问题ajax回调问题ajax回调问题
2017-12-16
关于js调用ocx控件的问题,代码如下,哪位大牛大爷帮小弟讲解下,都是什么意思,万分感激
2017-11-10
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅