Ohhnews

分类导航

foojay

MongoDB聚合优化:来自实践的案例研究(第一部分)

本文是MongoDB聚合优化系列的第一部分,通过一个虚构的视频流服务案例,展示了如何通过数据模型和聚合管道设计优化,将查询性能提升超过800倍。文章基于真实设计评审,初始聚合管道包含多个$match、$lookup、$unwind、$group等阶段,在100万用户、340万设备和500万映射的数据集上,平均查询耗时11.8秒。经过数据模型重构和管道简化,最终平均查询时间降至14毫秒,总耗时从260秒降至655毫秒。文章详细解释了初始设计的缺陷(如过度使用关联集合和数组展开)以及优化思路,为MongoDB使用者提供了实践指导。
#mongodb#聚合优化#性能提升#数据建模#案例研究
$ more
foojay

Quarkus深度解析:Foojay播客访谈精华

本文基于Foojay播客对Quarkus的深度访谈,总结了该框架的核心特性。Quarkus作为云原生Java框架,通过构建时优化(而非运行时反射)实现快速启动和低内存占用,同时保留标准API和JVM/原生双模式。与Spring Boot相比,Quarkus默认采用云原生设计,集成Dev Mode、Dev Services和持续测试,显著提升开发反馈速度。在JVM模式下即可获得性能提升,而原生编译通过GraalVM进一步满足极低资源需求,适合Serverless场景。Quarkus还整合Vert.x和虚拟线程应对高并发,并通过MicroProfile提供容错与可观测性。这些特性有助于降低云成本:更小的内存占用意味着更少的节点需求,快速冷启动支持更激进的缩容至零。文章强调,团队应优先采用JVM模式,仅在需要极致密度时选择原生编译。
#quarkus#云原生java#构建时优化#开发者体验#成本优化
$ more
foojay

使用Quarkus Pi4J扩展将树莓派开发引入Quarkus

本文介绍了Quarkus Pi4J扩展,该扩展将树莓派硬件访问库Pi4J与Quarkus框架集成,使Java开发者能够在Quarkus应用中便捷地使用GPIO、I2C等接口。扩展提供了自动Pi4J上下文管理、CDI依赖注入、外部化配置(无需重新编译即可更改引脚映射)、基于注解的GPIO注入以及内置健康检查等特性。通过结合Pi4J的硬件能力与Quarkus的快速启动、低内存和云原生支持,开发者可以构建生产级别的物联网、边缘计算、智能家居和机器人应用。该扩展属于Quarkiverse社区生态,未来将进一步支持传感器、显示器和HAT等硬件平台。
#quarkus#pi4j#树莓派#物联网#java扩展
$ more
Spring Blog

Spring AI 2.0中的自纠正结构化输出

Spring AI 2.0 结构化输出增强 Spring AI 2.0 在原有 .entity() 方法基础上增加两个开关: validateSchema(): 在响应端进行 JSON Schema 验证,检测到不合规输出时自动重试(默认3次)。 useProviderStructuredOutput(): 在请求端将 Schema 传递给提供者 API(如 OpenAI、Anthropic),强制模型输出合规 JSON。 两者可组合使用,兼顾上游约束与下游容错。同时支持泛型类型(ParameterizedTypeReference)、自定义转换器(如处理 Markdown 代码块)以及获取完整 ChatResponse(responseEntity())。
#spring ai#结构化输出#自纠正#验证#提供者原生
$ more
Spring Blog

Spring本周更新 - 2026年6月23日

本期Spring周报聚焦于Spring Boot 4.1发布后的生态动态。内容涵盖:Spring Batch与MongoDB的集成博客、Spring AI 2.0组合式工具调用API详解、与DaShaun Carter的播客访谈、使用ElevenLabs实现语音控制的Spring AI食谱、基于Spring AI和Binance API的AI交易助手、InfoQ对社区动态的总结、Spring Cloud Stream与Spring Modulith的集成模块,以及Spring Boot 4.1发布亮点等。
#spring boot#spring ai#spring batch#技术动态#工具调用
$ more
Jetbrains Blog

如何赢得黑客马拉松:来自评委席的经验分享

在JetBrains与Codex联合举办的黑客马拉松中,评委们指出了决定胜负的关键因素:清晰的演示比复杂的项目更重要。获胜的关键包括:首先明确阐述要解决的问题,让评委感同身受;在编码前充分研究比赛规则和评委关注点;将范围缩小到一个核心功能,并确保演示流畅;把演示作为演讲主体,在90秒内展示可用结果;提前排练,从最终获胜场景倒推执行;最后保持热情和享受过程。成功最终归结为三点:以问题为导向、展示一个可工作的功能、并让评委感受到你的投入。
#黑客马拉松#项目演示#评判标准#问题定位#成功技巧
$ more
Jetbrains Blog

JetBrains IDE投资回报率的衡量方法

本文详细介绍了JetBrains IDE和AI Ultimate订阅的ROI计算器的方法论。该计算器基于用户输入、内部研究和开发者工作流假设来估算潜在收益。数据来源包括年度开发者生态调查(薪资基准)和针对具体产品的生产力调查(时间节省)。生产力提升计算采用任务模型,仅考虑IDE相关工作时间(约45%)和AI辅助任务(55%),通过公式合并IDE和AI的增益。财务计算以生产力节省减去许可成本得出净收益和ROI百分比。文章强调结果仅为示意,不保证实际效果。
#jetbrains ides#投资回报率#开发者生产力#软件开发工具#生产力评估
$ more
InfoQ Java

Java新闻综述:Spring Tools、Helidon、Open Liberty、TomEE、JobRunr、Hibernate、Commonhaus

2026年6月15日当周的Java新闻综述要点:Spring Tools、Helidon、JobRunr和Gradle发布了点版本;Open Liberty 2026年6月版发布;Apache TomEE 11.0首个里程碑版发布;Hibernate ORM 8.0首个测试版发布;Quarkus发布了紧急维护版以修复CVE-2026-50559;四个开源项目加入Commonhaus基金会。
#java#spring tools#helidon#hibernate#commonhaus
$ more
Jetbrains Blog

AWS Image Builder插件:让TeamCity镜像维护自动化

云构建代理是CI/CD中极具吸引力的功能:它能在队列繁忙时自动扩展构建容量,空闲时回收资源,同时每个代理从全新VM启动,保证构建环境纯净。但其核心挑战在于镜像维护——工具链升级或TeamCity更新后,静态机器镜像迅速过时,手动更新繁琐且易出错。AWS Image Builder插件应运而生,它将镜像更新转化为TeamCity构建配置,实现自动化:通过配置基础AMI、网络设置、标签、安装TeamCity agent、运行定制脚本、集成VCS镜像加速检出等步骤,即可一键构建新AMI。插件支持按标签策略自动选择最新镜像,配合Kotlin DSL配置,让TeamCity云代理始终使用最新环境,极大简化运维工作。
#teamcity#aws image builder#云构建代理#自动化#ci/cd
$ more
Jetbrains Blog

PHP版本迁移:不破坏任何东西的迁移方法

PHP作为71.8%已知服务端语言网站的动力来源,其版本迁移是开发团队面临的主要挑战。从PHP 7迁移到PHP 8可带来18-42%的性能提升,但仍有34%的网站运行在不再受支持的PHP 7上。迁移往往因缺乏可见性而受阻,问题直到生产环境才暴露。JetBrains的静态分析工具Qodana可在迁移前发现所有不兼容问题,评估工作量,并通过CI门禁防止新问题。它帮助团队在开始迁移前掌握全貌,避免手动审计,降低回归风险。
#php版本迁移#静态分析#qodana#技术债务#性能优化
$ more