标签

后端

Pixel 内核源码不再跟随 Git tags:Google 的获取流程为何让第三方 ROM 承压

来源: oschina.net 35
Google 似乎正在改变 Pixel 内核与驱动源码的交付方式:过去,开发者可以通过 AOSP 相关 Git 仓库和 tags 获取对应版本;现在,GrapheneOS 团队称,相关源码不再以 Git tags 的形式推送,而是需要提交表单、等待数周,之后通过 Google Drive 获得代码。 这不是一个普通的下载入口调整。对依赖公开、可自动化源...

PostgreSQL 能否一统数据系统:从 Kafka、Elasticsearch 到 Redis 的边界分析

来源: oschina.net 40
“PostgreSQL for Everything”每隔一段时间就会重新引发讨论。原因并不难理解:PostgreSQL 的核心能力很完整,扩展生态也越来越丰富,JSONB、全文搜索、逻辑复制、LISTEN/NOTIFY、分区表和丰富的索引类型,让它能够覆盖许多原本需要专用系统的场景。 但“能做”不等于“应该替代”。PostgreSQL 更像一把能力很...

Go 1.27:泛型方法终于落地,JSON、UUID 与 SIMD 进入标准工具箱

来源: oschina.net 47
Go 1.27 正式发布。这个版本最受关注的变化,是期待已久的泛型方法终于进入语言:方法可以声明只属于自己的类型参数,而不必把整个类型改造成泛型类型。与此同时,标准库继续扩展能力, 迎来较大规模重写,UUID 与 SIMD 也开始成为开发者可以直接依赖的标准能力。 对于日常 Go 开发,这不是一次只需要修改版本号的升级。泛型方法会影响类型设计和接口边界...

PostgreSQL GSSAPI Kerberos 配置:把 krb_caseins_users 与 krb_server_keyfile 理清

来源: postgr.es 39
PostgreSQL 的 GSSAPI 认证看起来像是“启用 Kerberos”这么简单,实际却依赖两个容易被忽略的服务端设置: 决定 PostgreSQL 从哪个 keytab 读取服务密钥, 决定 Kerberos 用户名与 PostgreSQL 角色名匹配时是否区分大小写。把这两个开关混在一起排查,通常会让认证问题变得更难定位。 指向 Postg...

用 pg_shmemviz 看懂 PostgreSQL 共享内存:从分配布局到原始字节

来源: postgr.es 44
PostgreSQL 的共享内存决定了缓冲区、进程状态、WAL、锁和动态共享内存等多个核心子系统如何协作。过去,我们通常通过 、 或 查看其中某个方面;但当问题涉及物理位置、C 结构体字段、指针引用和字节级变化时,这些视图就不够用了。 是一个面向开发和调试的可视化工具。它把 PostgreSQL 的主共享内存段和动态共享内存段捕获为离线快照,再通过本地...

Bun 1.4 的 Rust 重写为何迟到:运行时迁移远不只是换语言

来源: oschina.net 50
Bun 在 2022 年凭借启动速度、内存占用和一体化工具链迅速走红。它以 Zig 构建,把运行时、包管理器、测试工具和构建能力放进一个产品中,也让不少团队开始认真考虑替代 Node.js。 三年多后,焦点从性能承诺转向了 Bun 1.4 的 Rust 重写及其延期。由于现有摘要没有给出重写范围、发布日期或具体技术阻塞,不能把延期简单归结为某个语言或某...

Supply chain attack on arrayref

来源: blog.rust-lang.org 40
{"title_zh":"arrayref 供应链事件复盘:Rust 项目如何排查恶意 crate","body_zh":"# arrayref 供应链事件复盘:Rust 项目如何排查恶意 crate\n\n这起事件展示了 Rust 供应链攻击的一条现实路径:攻击者不必直接修改业务代码,只要控制维护者账号或开发环境,重新发布一个看似正常的热门 crat...

Rust 1.98.0:让浮点优化与整数格式化更接近零成本

来源: blog.rust-lang.org 46
Rust 1.98.0 已经进入 stable 通道。这一版本的重点不在语法大改,而在几个很实用的底层能力:浮点类型新增允许代数重排的运算方法,整数可以直接格式化到专用缓冲区, 与 的交互也获得了更明确的安全保证。 对于追求吞吐量、低分配和可控内存行为的 Rust 项目来说,这些改动值得单独评估,尤其是数值计算、序列化、日志和高频数据处理代码。 已经通...

从 JRuby 维护者视角看:为什么 Ruby 仍然需要 JVM

来源: spring.io 50
围绕 JRuby 负责人 Charles Nutter 的访谈,值得关注的并不只是某个 Ruby 实现的近况,而是一个更实际的问题:当团队已经拥有成熟的 JVM 基础设施时,Ruby 应用是否必须离开这套生态,才能获得更好的性能、可观测性和运维能力? JRuby 提供了另一种答案。它让 Ruby 代码运行在 JVM 上,同时尽量保留 Ruby 语言和常...

Spring Integration 7.2.0-M1 发布:如何评估这个里程碑版本

来源: spring.io 48
Spring Integration 7.2.0-M1 已经可用。 表示这是 7.2 系列的早期里程碑版本,适合提前验证兼容性、试用新能力和反馈问题,但不应直接作为生产环境的默认版本。 与正式稳定版相比,里程碑版本的主要价值在于让团队更早接触目标版本。对于依赖 Spring Integration 构建消息流、文件处理、HTTP 集成或事件驱动流程的项...