Ohhnews

分类导航

DZone Java

Java应用在Kubernetes上的零停机部署

本文全面介绍了在Kubernetes上为Java应用实现零停机部署的方法。内容涵盖滚动更新、蓝绿部署、金丝雀部署等策略,Kubernetes的核心原语(Deployment、Service、探针、HPA等),Java框架(Spring Boot、Quarkus、Micronaut)的优雅关闭和健康检查配置,会话状态处理、数据库迁移、流量切换,以及基于GitHub Actions和Jenkins的CI/CD流水线。还涉及可观测性(Prometheus、Grafana、Jaeger)和测试策略(金丝雀分析、混沌测试、冒烟测试)。
#零停机部署#kubernetes#java#部署策略#ci/cd
$ more
Jetbrains Blog

JetBrains携手AlphaEvolve:加速IDE复杂算法的新方法

本文介绍了JetBrains与Google DeepMind合作,利用AlphaEvolve系统探索IntelliJ IDE索引中B树算法的优化。在合成基准测试中,多数超过50次迭代的实验实现了15-20%的性能提升。在完整IDE测试(Kotlin Spring Petclinic项目)中,最佳候选方案将端到端索引时间从17.4秒降至16.6秒(约4.6%),但只有2/5的候选方案表现出统计显著的改进。工程团队强调,AlphaEvolve扩展了搜索空间,但最终的基准测试、代码审查和发布决策仍由人工掌控。
#alphaevolve#google deepmind#ide索引#性能优化#算法发现
$ more
DZone Java

Pragmatica Aether:让Java回归托管环境

核心观点 当前Java微服务实践(胖JAR、Docker、Kubernetes)违背了Java的设计初衷——应用应运行在托管环境中,由运行时管理基础设施,而业务逻辑只需关注自身。 解决方案 Pragmatica Aether是一个分布式运行时,通过以下设计实现分离: @Slice接口:应用只定义业务逻辑接口和实现,无需关注HTTP、服务发现、重试等基础设施。 内置共识KV存储:基于Rabia协议,无需外部配置服务。 内置构件库:DHT分布式存储,无需Nexus/Artifactory。 类加载隔离:每个Slice独立ClassLoader,避免依赖冲突。 声明式部署:TOML文件定义期望状态,一键部署。 容错与扩展 50%规则:少于半数节点故障时系统仍正常。 自动恢复:节点故障后自动替换,无需人工干预。 两级扩展:Slice实例扩展(毫秒级)与节点扩展;三层次决策系统(决策树、TTM预测、LLM规划),其中Tier 1保证核心生存。 开发体验 三种环境(Ember单进程、Forge集群模拟、Aether生产)使用相同代码,无需修改。CLI、Web仪表盘、Prometheus指标集成完善。 迁移路径 可逐步将遗留系统包装为@Slice,采用绞杀者模式,无需重写。新项目可直接创建细粒度Slice,实现按需扩展。 结论:让Java回归其设计本质——托管运行时管理一切,应用只负责业务逻辑。
#pragmatica aether#java#分布式运行时#微服务架构#容错机制
$ more
Jetbrains Blog

JetBrains学院五月动态

JetBrains学院发布五月动态:提供多达40个CSAI学士学位全额奖学金,涵盖学费、住宿及其他费用,另每月300欧元津贴,6月9日截止;推出面向开发者的AI工具新课程,涉及复杂代码生成、自动调试、测试、重构和性能优化;课程创作者计划允许讲师将课程集成到JetBrains IDE中,学生可直接在IDE练习;一篇关于“摩擦最大化”与编程学习的文章,探讨适度的困难如何加深理解;一场关于软件工程转变为上下文工程的网络研讨会,讨论开发者角色演变和AI采用的反模式。
#jetbrains#奖学金#人工智能工具#课程创作#编程学习
$ more
Jetbrains Blog

TeamCity 2026.1.1 现已发布

JetBrains 发布了 TeamCity On-Premises 2026.1 的首个 Bug 修复版本 2026.1.1。该更新解决了超过20个问题,包括构建代理备用 IP 地址被忽略、Rake 插件损坏、S3 上传失败以及 .NET 构建中“Exists”代理要求无法找到兼容代理等问题。更新可提升性能、兼容性、构建稳定性及安全性。升级方式包括自动更新、官网下载或更新 Docker 镜像。
#teamcity#版本更新#bug修复#性能优化
$ more
foojay

AI时代企业Java团队为何更需要质量门禁

随着AI辅助代码生成的普及,企业Java团队面临更大的代码质量控制挑战。本文指出,仅依赖IDE设置或个人纪律已不足以应对大型分布式团队的长期维护需求,必须将确定性的质量门禁集成到构建和CI管道中。这些门禁应涵盖构建可复现性、依赖治理、编译测试、静态分析、安全合规及源码结构规范等多个层次。文章重点介绍了开源工具JHarmonizer,它能在尊重声明依赖的前提下自动化重构Java类成员顺序,使源码结构在所有开发环境中保持一致。通过将格式化、导入、排序等机械性检查交由工具自动执行,团队可将审查精力集中于业务逻辑和设计决策,从而提升交付效率与代码质量。
#企业级java#质量门禁#人工智能#代码可维护性#jharmonizer
$ more
foojay

探索MongoT(Atlas Search)

本文深入探讨MongoT(Atlas Search)的各项功能,包括文本搜索示例、分面搜索、Lucene索引策略及其相比MongoD索引的优势、向量搜索案例,以及本地Grafana监控和Java性能代码包。文章还包含详细的性能分解表,帮助开发者优化$search聚合路径。
#mongot#atlas search#文本搜索#lucene索引#向量搜索
$ more
foojay

BoxLang格式化工具介绍

BoxLang内置了代码格式化工具,支持.bx、.bxs、.bxm、.cfm、.cfc和.cfs文件,可自动统一团队代码风格。无需额外安装,运行boxlang format即可格式化整个项目。通过.bxformat.json配置文件可自定义缩进、行宽、括号风格等。在CI中可使用--check模式作为质量门禁,确保PR中的代码风格一致。VS Code支持保存时格式化功能,需在.bxlint.json和settings.json中启用。已有的cfformat配置可通过命令自动迁移。此外还支持预览、排除目录、自定义配置路径等选项。该工具旨在消除代码审查中的风格争论,将格式化自动化。
#boxlang#代码格式化#开发工具#ci/cd#vs code
$ more
Jetbrains Blog

DataSpell独立产品即将终止,功能整合至PyCharm

产品停用公告 JetBrains宣布将停止DataSpell独立产品,其核心数据科学功能(包括Jupyter笔记本、数据探索和分析工作流)将被整合到PyCharm中。自2026年5月28日起,DataSpell将不再接受新订阅,现有用户可继续使用。2026年9月1日起,符合条件的订阅将自动转换为PyCharm Pro,并提供等值AI Credits。用户将获得回退许可证以便平稳过渡。此举旨在简化产品线,为用户提供更统一的开发体验。
#dataspell#pycharm#数据科学#产品整合#jetbrains
$ more
Jetbrains Blog

宣布弃用 dotMemory Unit

JetBrains 宣布正式弃用 .NET 内存单元测试框架 dotMemory Unit。该框架长期用于检测 .NET 代码中的内存问题,但已不再积极开发,不支持最新的 .NET 版本,并且生成的遗留工作区格式与最新版 dotMemory 不兼容。此外,其依赖项存在已知安全漏洞且无法可靠更新。JetBrains 建议用户在安全敏感环境中立即停止使用,目前没有提供直接替代方案。dotMemory Unit 已于 2026 年 5 月 20 日在 NuGet 上标记为弃用,5 月 28 日发布官方通知,文档仍保留但会更新状态。团队对用户长期以来的信任表示感谢。
#dotmemory unit#.net#内存分析#单元测试#弃用
$ more