作者:void-sleep
- K8S 集群平滑迁移:Service + 手工 EndpointSlice 跨集群引流
K8S 集群迁移的平滑方案:老集群 Service 开 NodePort,新集群建无 selector 同名 Service + 手工 EndpointSlice 指向老集群,服务逐个就绪后再切回。
- 企业级智能代码重构探索:大规模自动化迁移实践与工具选型
介绍 OpenRewrite、Spring Boot Migrator 等工具在企业级自动化代码迁移与重构中的实践方法。
- Spring Boot 3 到 4 迁移完全指南:新特性、废弃功能与实战踩坑经验
梳理 Spring Boot 4 关键特性、迁移步骤与常见问题,帮助团队从 3.x 平稳升级到 4.0 并完成验证。
- Awesome Alternatives Bitnami:寻找 Bitnami Charts 的替代方案
Bitnami 停止更新后,汇总常用的替代 Helm Charts 和容器镜像方案,帮助团队平滑迁移。
- Javax 和 Jakarta 过渡期兼容方案
详细介绍从 Javax 到 Jakarta EE 的迁移兼容方案,包括背景、工具选择和实施策略,帮助企业平滑完成迁移
- 预防和消灭技术债:Maven CI 如何在编译时禁止调用某些特定 API
介绍 Maven CI 中禁止调用特定 API 的实现方式,借助 Forbidden APIs 在编译期拦截技术债。
- Keycloak 自定义 User Federation SPI 实现:对接企业已有用户系统
通过 Keycloak SPI 实现自定义用户联合,将企业已有的 LDAP、AD 或自有用户系统接入 Keycloak 统一认证。
- 使用 Calibre Image Actions 在 CI/CD 中自动压缩图片
介绍如何使用 calibreapp/image-actions 在 GitHub Actions 中自动压缩和优化图片,减少网站加载体积。
- Spring Security 集成 Keycloak 实现用户 RBAC、ABAC 授权
介绍 Spring Security Resource Server 对接 Keycloak,实现 OAuth2 认证、JWT 解析与 RBAC、ABAC 授权。
- Backstage 集成 oauth2-proxy 和 Keycloak,实现用户管理、登录认证以及 RBAC、ABAC 授权
基于 K8S 部署 Backstage,集成 oauth2-proxy 与 Keycloak,实现登录认证、用户同步及 RBAC、ABAC 授权配置。
- 使用 oauth2-proxy 为任意程序增加认证鉴权,结合 K8S、traefik、keycloak 部署配置详解
使用 oauth2-proxy 结合 Traefik、Keycloak 与 K8S,为应用接入统一登录认证、单点登录和 RBAC 鉴权。
- Koupleless 试用报告总结,踩坑记录分享
Koupleless 试用报告总结,踩坑记录分享,包含模块化开发部署、资源共享和迁移成本评估
- 容器镜像制作最佳实践,多架构编译,Dockerfile 编写小技巧和踩坑记录,镜像维护辅助工具 ORAS、skopeo 等介绍
聚焦容器镜像制作最佳实践,涵盖多架构编译、Dockerfile 编写技巧,以及 ORAS、skopeo 等工具用法。
- Java 25 完整升级指南:从 Java 8 到 Java 25 新特性、性能优化、迁移实战全解析
全面解析 Java 25 新特性、性能优化与迁移实战,帮助团队从 Java 8 平滑升级到 Java 25。
- GitOps 中的 Kubernetes Secret 管理:方案对比与最佳实践
GitOps 场景下如何管理 Kubernetes Secret,对比 Sealed Secrets、External Secrets Operator、SOPS、Vault 等方案。
- 使用 Pulumi 部署 cert-manager 创建 K8S 自签名证书并信任证书
使用 Pulumi 部署 cert-manager 创建 K8S 自签名证书,为应用自动签发 HTTPS 证书,并信任证书,适用于内网环境证书管理
- MacOS 搭建本地 K8S 开发环境方案选型,基于 multipass、lima 等不同方案优缺点介绍对比
MacOS 搭建本地 K8S 开发环境方案选型,基于 multipass、lima 等不同方案优缺点介绍对比,包含多架构模拟和 CI/CD 场景应用
- 使用 OCI Artifacts 和 ORAS 标准化软件交付
使用 OCI Artifacts、ORAS 和 Harbor 标准化软件交付,将 Helm Charts、配置文件等非容器制品统一纳入 OCI 注册中心管理。
- K8S Service 长连接导致负载不均衡问题分析和解决办法
K8S Service 长连接导致负载不均衡问题分析和解决办法,包含 Keep-Alive 连接管理和 ipvs 负载均衡策略调整
- MacOS 持久化配置,彻底解决 too many open files in system 的问题
MacOS 持久化配置,彻底解决 too many open files in system 的问题,包含 launchctl limit 配置和系统级限制调整方法
- Spring Boot Start 脚手架定制开发和快速入门
基于 start.spring.io 快速定制自己的 Spring Boot 脚手架,包含 parent pom 规范、统一包结构、代码模板和二方 jar 包管理
- Spring Modulith 模块化试验报告:构建可演进的模块化单体架构
使用 Spring Modulith 实现服务模块化,验证模块化单体架构在中小规模应用中的可行性、收益与限制。
- GraalVM 入门与实践:Native Image 编译和性能对比
介绍 GraalVM 的核心特性、Native Image 编译实践、与 OpenJDK 的 GC 性能对比,以及 Spring Boot 集成方案。
- 基于 Alibaba Sentinel 实现的分布式限流中间件服务以及遇到的坑和注意事项
介绍 Alibaba Sentinel 的分布式限流、熔断降级与规则配置,并总结部署和使用中的常见注意事项。
- Windows 使用脚本提高权限以及设置环境变量
Windows 使用脚本提高权限以及设置环境变量,解决域控安全策略限制下的文件修改和环境变量配置问题
- Git SSH 客户端同一机器多用户多仓库配置
Git SSH 客户端在同一机器上为不同目录配置不同的用户,实现个人账号和公司账号分离管理
- 研发团队技能提升实践:从技术分享到能力模型建设
分享研发团队技能提升的实践经验,包括技术分享机制、Code Review 文化、能力模型建设和外部培训策略。
- 重复 Transfer-Encoding Response Header 引起的 Traefik 代理服务 500 问题
重复 Transfer-Encoding Response Header 引起的 Traefik 代理服务 500 问题,包含 Spring Boot 应用 Header 重复问题排查和解决方案
- K8S 容器 PID 限制引起的 Java OutOfMemoryError
K8S 容器 PID 限制引起的 Java OutOfMemoryError 问题分析与解决方案,包含 PID 限制配置和排查方法
- Spring Boot 使用 Micrometer 集成 Prometheus 监控,5 分钟接入自定义监控指标
介绍 Spring Boot 集成 Micrometer 与 Prometheus 的方式,并给出自定义监控指标的实现与规范。
- K8S Pod 容器内 Java 进程内存分析,内存虚高以及容器 OOM 或 Jave OOM 问题定位
分析 K8S Pod 内 Java 进程内存占用,定位容器 OOM、堆外内存与 GC 差异,并结合 NMT、jemalloc 排查。
- 使用 Visual Studio Code 搭建多用户远程 IDE
为 Visual Studio Code 增加外部认证,并支持多用户,不同用户的 code-server 实例完全隔离,实现多用户远程开发环境