codezeze
本站致力于IT相关技术的分享
在Azure AKS上为WebSocket服务设计基于GitOps的零停机更新架构 在Azure AKS上为WebSocket服务设计基于GitOps的零停机更新架构
在生产环境中,一个部署在Kubernetes上的无状态HTTP服务,其滚动更新(Rolling Update)策略通常足够应对。Pod被逐个替换,流量自然地切换到新版本。但当服务的核心是WebSocket时,这个模型就崩溃了。标准的滚动更新
2023-10-27
在 Spinnaker 金丝雀发布中集成两阶段提交以保障 Express.js 服务升级的事务一致性 在 Spinnaker 金丝雀发布中集成两阶段提交以保障 Express.js 服务升级的事务一致性
一次失败的发布所造成的线上数据不一致,其修复成本远超任何前期的预防性投入。问题起源于一个看似常规的需求:为我们的核心用户账户服务(一个基于 Express.js 的微服务)增加一个“安全等级”字段。这个字段的引入并非简单的 ALTER TA
为集成Azure Service Bus的Django应用构建可独立测试的异步处理层 为集成Azure Service Bus的Django应用构建可独立测试的异步处理层
项目初期,一个数据导入功能被直接实现在Django的视图中。用户上传一个文件,服务器同步处理,然后返回结果。这在数据量小的时候工作得很好。但随着业务增长,文件越来越大,同步处理导致请求超时,用户体验急剧下降。显而易见,我们需要将这个耗时任务
2023-10-27
在 Kubernetes 环境下为 Svelte PWA 实现精细化金丝雀发布 在 Kubernetes 环境下为 Svelte PWA 实现精细化金丝雀发布
一个看似简单的 PWA (Progressive Web App) 版本更新,在生产环境中可能会演变成一场灾难。问题的根源在于 Service Worker 激进的缓存策略。一旦用户的浏览器注册了一个 Service Worker,它会接管
基于Quarkus与Event Sourcing构建支持时态查询的图谱化IAM核心 基于Quarkus与Event Sourcing构建支持时态查询的图谱化IAM核心
一、 定义困境:超越“现在”的权限质询在构建一个复杂的、多租户的身份与访问管理(IAM)系统时,核心挑战通常不仅仅是回答“用户A当前是否能访问资源B?”。在金融、医疗或任何需要严格审计的领域,问题会迅速演变成:“用户A在上周二下午3点15分
利用 Rust 构建一个面向 Kotlin Monorepo 的高性能增量式构建系统 利用 Rust 构建一个面向 Kotlin Monorepo 的高性能增量式构建系统
团队的 Monorepo 越来越臃肿,CI 时间从最初的 5 分钟飙升到了 45 分钟,本地构建一杯咖啡的时间都不够。问题根源很清晰:一个混合了 Kotlin/JVM 微服务、一个共享的 Kotlin Multiplatform 模块,以及
2 / 5