v2ex_hot_2025-12-23

V2EX 热门帖子

1. AI 是不是基本杀死了 blog

特别是技术型博客,类似 CSDN ,基本上在 AI 面前一文不值。 其他的博客,也好不到哪里去。

作者: 8675bc86 | 发布时间: 2025-12-23 08:18


2. 比较好奇,为什么昨晚快手的审核手段失效?

很神奇的一个事情,持续时间也不算短

作者: Dabney | 发布时间: 2025-12-23 00:51


3. 我的 app 被人干了,颠覆了我的认知!

上周我 app 用户群来了一位不速之客,发了一张图片

image

我一看,我艹,这不被破解了嘛。 随即我踢了他,然后当天下午加了他 wx ,他同意了。 整个聊天过程没有急眼,他还表明破解的这个包没有流传出去。 因为那个人只愿出几十块钱,他肯定不会成交的,纯试试水,就破了。

从聊天记录我总结出以下几点:

1:他不懂安卓代码,纯靠几个工具 [其中有 MT 管理器[狗东西,开发者天敌]] 就能快速重签打包,我在 Java 和 cpp 中有几个签名验证的埋点,他依然能打包,并正常运行。

2:我的 app 核心功能要用到安装包中的本地带密 zip ,解压密码由后台配置信息接口返回,每个版本的安装包中的 zip 解压密码都不一致,所以我故意改了后台配置信息接口中的密码,他破解的老包功能依然正常使用,我轻描淡写问了他,他说就一个工具就能搞定。

3:他还能破包后加卡密弹窗,说这是基操。视频链接: https://m.okjike.com/originalPosts/69493b881cc9bc8e54a2608d?s=eyJ1IjoiNjM1Nzg4ZjM0N2RkNjRhN2Y3Y2RiMTk0In0%3D

经过几天的 v 站查帖和看 B 站视频,我知道业务逻辑在本地是无法完全防破解的,只是有几点疑问。

1:加卡密弹窗的云注入平台为爱发电?就没人投诉吗?

2:他破解的包为什么不受后端动态解压密码控制?如果绕过校检本地如何解压成功呢?

作者: 92Developer | 发布时间: 2025-12-22 12:50


4. 做给自己的一款 RSS Reader

支持手动订阅、导入\导出 OPML ,增加了一个记录笔记的功能,文章内选择内容记笔记,支持对笔记进行注释。目前笔记导出、文章保存到三方平台开发中……

YakReader YakReader

作者: 0oo0 | 发布时间: 2025-12-23 07:55


5. 老婆说悬浮时钟有广告我来搞一个

  • 无网络权限,无后台
    • 目前测试平台只有小米 红米
    • 工具:Gemini3
    • 平台:flutter

通过网盘分享的文件:rush-1.0.apk 链接: https://pan.baidu.com/s/1BMJTYaEAvFyoxi6jrVKdRg?pwd=rfkt 提取码: rfkt 复制这段内容后打开百度网盘手机 App ,操作更方便哦

作者: lostsquirrelX | 发布时间: 2025-12-23 09:11


6. 微软要在 2030 年前用 rust 重构 c/c++代码

https://www.thurrott.com/dev/330980/microsoft-to-replace-all-c-c-code-with-rust-by-2030

Microsoft is taking an impressive step in modernizing its biggest codebases and will eliminate all C/C++ code by the end of the decade, replacing it with Rust.

Imgur

作者: fulln | 发布时间: 2025-12-23 09:45


7. 讨论个问题:该不该重写 equal 和 hashcode

和 AI 交流的时候产生的一个问题:

AI 的大致结论是,对于业务类,如果存在明确的唯一标识,比如 ID ,那么应该重写这两个方法,这样在做哈希表之类的时候才能直接使用业务类。

但我认为的是,因为当把一个对象放进哈希表的时候,我会默认它的 hashcode 方法是默认的,也就是每个对象有唯一的哈希值。如果重写了 hashcode ,那么在使用的过程中如果不知道这个类复写了 hashcode ,那么就容易导致代码问题。

所以,我想知道做 java 后端的,你们一般会重写吗?

AI 的一部分原文:

如果抛开 “数量占比”,聚焦于「开发中需要重点设计、保证正确性的核心场景」,重写的频率会远高于 “不重写” 的核心场景,原因如下:

核心类必重写:所有承载业务数据的核心类(如 User 、Order 、Goods 等),几乎 100% 需要重写 —— 这是保证哈希集合正常工作、业务对象唯一性判断、序列化后比对等核心功能的前提,不存在 “可选” 的空间;

重写的 “重复性” 更高:一个项目中,数据承载类的数量虽少,但每个类的开发都必然包含 “重写 equals/hashCode” 这一步(无论是手动生成、Lombok 注解还是 Record 类),属于 “必做操作”;而不重写的类,只是 “无需额外操作”,并非 “主动开发行为”;

工具的普及佐证高频需求:Lombok 的 @EqualsAndHashCode 、Java 16 + 的 Record 类(默认重写)、IDE 自动生成功能,这些工具的广泛使用,本质是因为 “重写” 是开发中的高频需求,才会有大量工具来简化这一操作。 

作者: WngShhng | 发布时间: 2025-12-23 07:50


8. 各大厂是怎么做终端管控的?

最近公司在做防泄密和合规,已知对于 Windows 来说最好的方案是 AD 域,mac 毫无疑问是 MDM+APNs+ADE
但是有一个特殊的需求,希望能有一个平台可以同时解决两个系统的管控,管控项如下:

1.软件黑白名单
2.外设管控( USB 管控)
3.终端网络管控
4.要具备杀毒和防护功能
5.屏幕监视( emm )
6.文件审计
7.支持远程锁定

JAMF 、IOA 、卓豪、IP-Guard 、Kandji ,都调研过了,没法一个平台满足,只能搭配
那么问题来了,国内有什么厂商的产品能同时做到这些,或者有无更好的方案?

作者: JiMuChan | 发布时间: 2025-12-23 04:06


9. 程序猿你们都怎样去学英语口语的,想去外企,求学习途径

程序猿你们都怎样去学英语口语的,想去外企,求学习途径

个人英语听力不差,看入门级别的美剧基本上可以啃生肉

但是英语交流很弱,缺少环境,求大佬们赐教~~~~

作者: liang37038 | 发布时间: 2025-12-23 09:29


10. GLM-4.7 上线并开源:更强的编码

GLM-4.7 上线并开源。 新版本面向 Coding 场景强化了编码能力、长程任务规划与工具协同,并在多项主流公开基准测试中取得开源模型中的领先表现。

目前,GLM-4.7 已通过 BigModel.cn 提供 API ,并在 z.ai 全栈开发模式中上线 Skills 模块,支持多模态任务的统一规划与协作。

Coding 能力再提升

GLM-4.7 在编程、推理与智能体三个维度实现突破:

  • 更强的编程能力 :显著提升了模型在多语言编码和在终端智能体中的效果; GLM-4.7 现在可以在 Claude Code 、TRAE 、Kilo Code 、Cline 和 Roo Code 等编程框架中实现“先思考、再行动”的机制,在复杂任务上有更稳定的表现。
  • 前端审美提升 :GLM-4.7 在前端生成质量方面明显进步,能够生成观感更佳的网页、PPT 、海报。
  • 更强的工具调用能力 :GLM-4.7 提升了工具调用能力,在 BrowseComp 网页任务评测中获得 67.5 分;在 τ²-Bench 交互式工具调用评测中实现 87.4 分的开源 SOTA ,超过 Claude Sonnet 4.5 。
  • 推理能力提升 :显著提升了数学和推理能力,在 HLE (“人类最后的考试”)基准测试中获得 42.8% 的成绩,较 GLM-4.6 提升 41%,超过 GPT-5.1 。
  • 通用能力增强 :GLM-4.7 对话更简洁智能且富有人情味,写作与角色扮演更具文采与沉浸感。

Code Arena:全球百万用户参与盲测的专业编码评估系统,GLM-4.7 位列开源第一、国产第一,超过 GPT-5.2 。

在主流基准测试表现中,GLM-4.7 的代码能力对齐 Claude Sonnet 4.5: 在 SWE-bench-Verified 获得 73.8% 的开源 SOTA 分数; 在 LiveCodeBench V6 达到 84.9% 的开源 SOTA 分数,超过 Claude Sonnet 4.5 ; SWE-bench Multilingual 达到 66.7%(提升 12.9%); Terminal Bench 2.0 达到 41%(提升 16.5%)。

真实编程场景下的体感提升

在 Claude Code 环境中,我们对 100 个真实编程任务进行了测试,覆盖前端、后端与指令遵循等核心能力。结果显示,GLM-4.7 相较 GLM-4.6 在稳定性与可交付性上均有明显提升。

GLM Coding Plan

  • Claude Code 全面支持思考模式,复杂任务连续推理与执行更稳定
  • 针对编程工具里的 Skills / Subagent / Claude.md 等关键能力定向优化,工具调用成功率高、链路可靠
  • Claude Code 中视觉理解能力开箱即用;内置搜索与网页读取,信息获取到代码落地一站闭环
  • 架构设计与指令遵循更强,明显降低长上下文下的“幻觉式完成 / 跑偏”,交付质量更可控

作为本次升级的首个体验权益,所有购买套餐的用户将获得「体验卡」礼包,可邀请 3–7 位新用户免费体验 7 天套餐权益。

领取链接:[https://zhipuaishengchan.datasink.sensorsdata.cn/t/kc]

作者: Zhipuai | 发布时间: 2025-12-23 07:17


11. 我才发现我的 cursor 和别人收费方式不一样,我是一个月 500 次请求

20/ 500 Included-Request Usage Usage included in your plan. 我看别人都不是这个次数收费

都是 pro 怎么还有不同的收费方式

作者: 90928yao | 发布时间: 2025-12-23 05:12


12. 三星手机和一加手机哪个更推荐?续航都怎么样?(不买旗舰)

作者: Zarhani | 发布时间: 2025-12-23 04:27


13. 我宣布 ide 之战, 谷歌赢了

反正折腾一通, 也是嫖上了谷歌免费套餐了

能用一年了

昨天把其他 ide 全卸载了, 打算只专注用 antigravity 了

初步测试, 效果还是很满意得

小型项目, 打开自动执行, 基本不折腾

作者: iorilu | 发布时间: 2025-12-23 02:25


14. 现代 React 应用卡顿的主要原因是什么?组件库 vs 重渲染机制

最近在优化一个中大型 React 项目,遇到了一些性能问题,想请教下各位的经验。 背景:

React 19 + TypeScript 使用了某主流 UI 组件库(Ant Design) 页面复杂度中等,有表格、表单、图表等

问题: 应用在某些场景下会有明显的卡顿感,比如:

输入框打字有延迟 列表滚动不流畅 弹窗打开/关闭有掉帧

我的疑问:

组件库的问题?

这些成熟的组件库内部实现是否会带来性能开销? 是不是应该考虑换成更轻量的组件库,甚至自己写?

React 重渲染机制?

是不是没用好 memo / useMemo / useCallback? 状态管理不合理导致大范围重渲染?

还是两者都有?

作者: SonicKang | 发布时间: 2025-12-22 13:28


15. 从文档管理到可对话知识库:个人知识库最佳实践方案

1. RAG 个人知识库和文档管理

  • 很多人都会遇到以下的问题:

    • 个人的技术资料和工作上累积的文档越来越多

    • PDF 、图片、文档散落在各个目录

    • 想找一份资料时只能靠文件名或全文搜索

    • 知道“某份文档里有答案”,但找不到在哪

一般来说,有大量资料和技术文档的资产的管理,要么放本地要么丢同步盘,可持久化好一些的解决方案就是部署文档管理系统管理(如 paperless-ngx 等).

1.png

那么当文档越来越多的情况下,自己已经几乎完全忘记文档内容时,如何查询和检索便成为了一个新的挑战.

随着现在大语言模型的发展,一个新的解决方向变得可行:

让电脑“读懂”你的文档,并且可以直接用自然语言提问

这就是 RAG 知识库,目前这类方案中,anythingllm 算是在强大和简单易用性中平衡的最好的产品了,而且最重要的是,部署简单和免费.

但 anythingllm 目前专注于 RAG 方向,对于原始文档的管理查找的功能有缺失,当我想在 anythingllm 中查看和管理原文档时,发现几乎难以实现,那么今天我这里探索总结的一个方案就是:

查看管理原始文档资产,并且同时同步成 AI 时代可对话、可推理的知识库

这篇文章,就是我最终探索出来的一套结合文档管理和 RAG 知识库优点个人知识库部署实践.可以方便的在 Linux 的个人服务器或者 NAS 上运行和部署.

2. 我选择了哪些组件

Paperless-ngx:文档资产管理

选择 Paperless-ngx 的原因非常明确:

  • 成熟稳定

  • 多文档格式支持, 有 OCR 能力( Tesseract )

  • 有完整的 API 接口

  • 支持规则化归档( document type / correspondent / tags )

  • 完全私有化

AnythingLLM: RAG 与 Workspace 的结合体

AnythingLLM 的优势在于:

  • Workspace 抽象非常适合“知识域”

  • 文档在 Workspace 中 embedding 后即可依赖 LLM 实现检索

  • 可对接本地 Ollama

  • 简单易上手

  • 完全私有化

Ollama:本地 LLM 模型以及 Embedder

大名鼎鼎的 Ollama 就不用多介绍了,这里我们跑两个模型,qwen3-embedding:0.6b 和 qwen3:4b,供 AnythingLLM 做 Embedder 和 LLM 使用(更加强大的 LLM 提供商很多,可以自行选择)

paper2anything:我开发的一款开源的同步工具

这个工具是我为解决以上问题开发的依据 paperless-ngx 的 tag 同步到 anythingllm 的 workspace 的工具,支持多 tag 增改删的同步,项目内有详细说明,没花几天时间写代码,只是共享一下方法并不是想要推广自己的项目,但还是欢迎使用并提 issue,求 star

项目地址:

👉 https://github.com/oserz/paper2anything

它做的事情包括:

  • 调用 Paperless API 获取文档元数据

  • 根据 tag 映射到 Workspace

  • 通过 AnythingLLM API 上传文档和 embedding 到 Workspace

  • 做增量同步(新增 / 修改 / 删除)

  • 本地保存同步状态

3. 部署方法和 Docker Compose 示例

  • Paperless-ngx 的部署,这是一份相对较齐全的可用配置(省略映射路径等选项):

    version: “3.9”

    services:
    broker:
    image: redis:7
    container_name: paperless-redis
    restart: unless-stopped
    volumes:
    - /your-path/redis:/data
    db:
    image: postgres:15
    container_name: paperless-postgres
    restart: unless-stopped
    environment:
    POSTGRES_DB: paperless
    POSTGRES_USER: paperless
    POSTGRES_PASSWORD: paperless
    volumes:
    - /your-path/pgdata:/var/lib/postgresql/data
    paperless:
    image: ghcr.io/paperless-ngx/paperless-ngx:latest
    container_name: paperless-ngx
    restart: unless-stopped
    depends_on:
    - db
    - broker

    ports:
    - “8888:8000”

    environment:
    # === 基础 ===
    PAPERLESS_REDIS: redis://broker:6379
    PAPERLESS_DBHOST: db
    PAPERLESS_DBNAME: paperless
    PAPERLESS_DBUSER: paperless
    PAPERLESS_DBPASS: paperless

    # === 管理员(首次启动)===
    PAPERLESS_ADMIN_USER: admin
    PAPERLESS_ADMIN_PASSWORD: admin123
    PAPERLESS_ADMIN_EMAIL: admin@example.com

    # === 时区 & 语言 ===
    PAPERLESS_TIME_ZONE: Asia/Shanghai
    PAPERLESS_DEFAULT_LANGUAGE: zh-hans

    # === OCR (屏蔽可能中文的 OCR 下载失败)===
    PAPERLESS_OCR_LANGUAGE: eng #chi_sim+eng
    PAPERLESS_OCR_CLEAN: clean
    PAPERLESS_OCR_MODE: skip
    # PAPERLESS_OCR_LANGUAGES: chi_sim

    # === 文件命名(新语法)===
    PAPERLESS_FILENAME_FORMAT: “//v2ex_hot_2025-12-23“

    # === 性能 ===
    PAPERLESS_TASK_WORKERS: 2
    PAPERLESS_THREADS_PER_WORKER: 2

    PAPERLESS_URL: (your domain address)

    volumes:
    - /your-path/data:/usr/src/paperless/data
    - /your-path/media:/usr/src/paperless/media
    - /your-path/consume:/usr/src/paperless/consume

  • 在 Paperless 中做的事情

完成部署后,你需要做三件事:

1. 创建管理员账号

2. 上传文档

3. 给文档设置或者分配标签

这些信息将直接决定后续知识库的结构

  • anythingLLM 的 docker compose 示例

    version: “3.9”

    services:
    anythingllm:
    image: mintplexlabs/anythingllm:latest
    container_name: anythingllm
    restart: unless-stopped

    ports:
    - “3001:3001”

    environment:
    # === 基础配置 ===
    - STORAGE_DIR=/app/server/storage
    - JWT_SECRET=your_password
    - LLM_PROVIDER=ollama
    - EMBEDDING_ENGINE=ollama

    # === Ollama 配置(本机或同一 Docker 网络)===
    - OLLAMA_BASE_URL=http://your-domain-addr:11434

    # === 日志 ===
    - LOG_LEVEL=info

    volumes:
    # === 核心数据(必须迁移)===
    - /your-path/data/storage:/app/server/storage

    networks:
    - anythingllm-net
    networks:
    anythingllm-net:
    driver: bridge

  • ollama 的部署和设置说明

这部分比较简单,就略过不说了,推荐 ollama 拉取 qwen3-embedding:0.6b 的模型设置到 anythingLLM 的 embedder 中,这算是 embedding 的最强模型了.

LLM 模型设置可以根据自己的条件来,本人测试 qwen3:4b 在 markdown 文档下可用,但 pdf 文档基本上就是乱答了,国内用收费模型如 deepseek 都体验不错.

2.png

  • 同步设置和说明

同步工具下载地址: https://github.com/oserz/paper2anything/releases/

在同步之前,一定要先设置好 anythingllm 中的 embedder 等选项再开始同步

根据 config.json.example 中填入 url 地址,和 token 和 api_key,改名成 config.json 运行 p2a 即可

anythingllm 的 api_key 在设置 –> 开发者 API

paperless-ngx 的 token 在账户信息 –> API 认证字符串

或者运行./sync_loop.sh 即可按半小时一次更新同步内容

  • 最终运行效果图:

3.jpg

4.jpg

作者: oser | 发布时间: 2025-12-23 01:23


16. V 友们有处理过交易相关的场景么?如何保证一个交易能够正常的完成,或者是出现异常的时候进行及时的补救?

场景就是电商购物的时候, 或者积分充值和提现之类的, 如果是峰值的话怎么规避呢? 仅仅靠队列削峰么? 或者说怎么规避一些恶意的攻击呢?

之前做 2b 比较多, 很少接触到这一块, 感谢大佬们拨冗回答. 先磕为敬 orz.

作者: JoeJoeJoe | 发布时间: 2025-12-23 07:46


17. gemini pro 的视频提取好像比 chatgpt 方便(网页)

之前没咋用过处理视频的 llm 。今天有一个 youtube 上 40min 的演讲想要提取演讲稿。

gemini 只要把链接给它,然后让它不断吐就行了。

chatgpt 好像不太行,比较费劲,agent 模式和普通模式都费劲八叉的搞不定。

作者: YanSeven | 发布时间: 2025-12-23 07:25


18. 被得力保险柜的逻辑蠢哭了

心血来潮买了个得力保险柜 老婆时不时放点首饰在里面,主要是之前东躲西藏太费脑子,买个保险柜专门放方便点。这是前话。

最近我住院,为了防止娃用电子产品,我就把投影仪的遥控器放保险柜里

结果奶奶告状说,娃周末还是召集了几个小伙伴偷看投影。

我们回来质问娃怎么能开我们的保险柜,本来我以为是不是上次放遥控器忘了关柜门,结果娃直接带我们到保险柜,用她的指纹直接打开了柜子。

我当时脑子就短路了,让她试了一下,果然能打开,随后我用我没有登记的手指,也能打开。

我就去问客服,客服说我没有设置指纹,所以所有指纹都能打开,我又翻了一下说明书,果然是设置指纹要按 5 次指纹,然后闪绿灯才行,我之前只是按一次,然后能打开就以为自己成功设置指纹了。所以我应该是没有设置成功指纹。

我被这个功能蠢哭了,难道没有设置指纹就默认所有指纹都能打开保险柜吗?那我设置密码又有何用?

作者: guoguobaba | 发布时间: 2025-12-22 15:52


19. Gemini 3 Canvas 模式根据图片生成页面异常

直接把图片丢给 Gemini ,让它复刻页面。

如图:

之前虽然没法完全复刻,但是绝大部分能还原得差不多。现在生成的页面完全是八竿子打不着,尝试了几次都不行。

作者: frankbuf | 发布时间: 2025-12-23 08:04


20. 不够“坦诚”的 Zustand:我们是否为了函数式而函数式?

引言

Zustand 是目前 React 生态中最流行的状态管理库之一。它以极简著称,也是我个人非常喜欢的库。 但在长期的使用中,我常常产生一种违和感:我们在一个名为“函数式”的库里,费力地模拟着面向对象。

那个无处不在的 get()

来看看经典的 Zustand 写法:

const useStore = create((set, get) => ({
  count: 0,
  inc: () => set({ count: get().count + 1 }),
  actionB: () => {
    // 调用另一个 Action
    get().inc(); 
    // 获取当前状态
    const val = get().count;
  }
}))

仔细审视这个 get()

  1. **它就是 this**:它的作用就是访问当前实例的上下文。
  2. 它是“二等公民” :你必须显式地调用它 get(),而且它打破了 JS 引擎对 this 的自然优化。
  3. 心智负担 :在写复杂逻辑时,你满屏都是 get().xxx,这并不比 [this.xxx](http://this.xxx) 优雅,反而增加了一层函数调用括号的视觉噪音。

那个黑盒般的 set

set 函数的设计初衷是好的(提供类似 setState 的原子更新),但在复杂场景下,它显得不够“坦诚”:

  1. 语义模糊set 隐藏了更新的细节。是合并?是替换?是深拷贝?你必须去查文档或看源码才能确定它是 “Auto Merging” 的。
  2. 逻辑断层 :当你想复用一段逻辑(比如 Private Method )时,你发现你很难在 create 的闭包里优雅地定义私有辅助函数,往往只能写在外面,破坏了 Store 的内聚性。

为了函数式而函数式?

我们推崇函数式编程( FP ),是因为它有 纯函数无副作用引用透明 等数学上的美感。

但 Zustand 的 Store 定义是纯函数吗?显然不是。它是一个包含了状态( State )和行为( Action )的容器 。 在计算机科学中,状态 + 行为 = 对象( Object )

既然我们本质上是在构建一个对象,为什么要回避 JS 语言原生提供的、经过几十年打磨的构建对象的最佳工具——Class

我们为了避嫌 “OOP”,发明了一套 (set, get) => ({...}) 的 DSL 。这不仅牺牲了 Class 的继承、属性访问器( Getter/Setter )等高级能力,还增加了一层理解成本。

这是否是一种形式上的函数式正确 ,而非工程上的务实选择

另一种可能性

如果在 React 状态管理中,我们不再视 class 为洪水猛兽,而是承认它作为 “Model” 载体的合理性,会发生什么? 这或许值得我们深思。

作者: jaydenWang | 发布时间: 2025-12-23 02:39


21. Nature vs Golang: 性能基准测试

nature 是一款较新的编程语言,其轻量简单,易于学习。在设计理念和运行时架构上参考了 golang ,同时有着更丰富的语法特性,更适用于业务开发,并在持续探索更广泛的应用领域。

性能是衡量编程语言核心竞争力的关键指标,接下来我们将从 IO 并发、CPU 计算、C 语言 FFI 、协程性能四个维度,并以 golang 作为基准对 nature 编程语言进行性能测试。

测试环境

配置项 详情
宿主机 Apple Mac mini M4 ,16GB 内存
测试环境 Linux 虚拟机( Ubuntu 6.17.8 ,aarch64 架构)
编译器 / 运行时版本 Nature:v0.7.0 ( release build 2025-12-15 )
Golang:go1.23.4 linux/arm64
Rust:cargo 1.85.0
Node.js:v20.16.0

所有测试均采用相同的代码逻辑实现,文中代码示例均以 nature 编程语言为例。

IO 并发

IO 并发是网络服务的核心能力,本测试通过 HTTP 服务端压力测试,综合考察语言的 IO 调度、CPU 利用率与 GC 稳定性。

nature 代码示例

import http  
  
fn main() {  
    var app = http.server()  
  
    app.get('/', fn( http.request_t req, ptr<http.response_t> res):void! {  
        res.send('hello nature')  
    })  
  
    app.listen(8888)  
}

ab 工具测试命令

ab -n 100000 -c 1000 http://127.0.0.1:8888/
  • -n 100000: 总请求数 10 万次
  • -c 1000: 并发数 1000

测试结果

可以看到 nature 在 HTTP 并发性能上超越了 golang ,这对于早期版本的编程语言来说可以说是不错的成绩。

由于 nature 和 node.js 均使用 libuv 作为 IO 后端,所以 node.js 也参与到基准测试中(libuv 线程不安全,node.js 和 nature 的事件循环均在单线程中运行),但 nature 作为编译型语言其并发处理能力远胜过 node.js 。

CPU 计算

使用经典的递归斐波那契数列计算 fib(45) 来测试语言的 CPU 计算与高频函数调用开销。

nature 代码示例

fn fib(int n):int {
    if (n <= 1) {
        return n
    }
    
    return fib(n - 1) + fib(n - 2)
}

测试方法

time ./main
1134903170./main  2.50s user 0.01s system 101% cpu 2.473 total

测试结果:

nature 和 golang 均采用自研的编译器后端,性能上也相差无几。而耗时高于 rust 的主要原因之一是两者在函数运行前进行了额外处理。

golang 采用了抢占式调度,不需要关注 GC safepoint ,但仍需要关注协程栈是否需要扩容,也就是下面的汇编指令

# more stack
f9400b90 	ldr	x16, [x28, #16]
eb3063ff 	cmp	sp, x16
540002a9 	b.ls	7869c <main.Fib+0x5c>  // b.plas

nature 采用了协作式调度,所以需要处理 GC safepoint 。但 nature 采用共享栈协程,所以不需要关心栈扩容问题。

# safepoint
adrp    x16, 0xa9d000
add     x16, x16, #0xeb0

ldr     x16, [x16]
cmp     x16, #0x0
b.ne    0x614198 <main.fib.preempt>

nature 的 safepoint 实现仍有优化空间,若后续采用 SIGSEGV 的触发模式,函数调用性能将会得到进一步提升。

nature 和 golang 采用了截然不同的调度策略和协程设计方案,这会带来哪些不同呢?不妨看看后续的测试 👇

C 语言 FFI

通过调用 1 亿次 C 标准库中的 sqrt 函数,测试与 C 语言的协作效率。

nature 代码示例

import libc  
  
fn main() {  
    for int i = 0; i < 100000000; i+=1 {  
        var r = libc.sqrt(4)  
    }  
}

测试结果

可以看到在 C FFI 方面,nature 相较于 golang 有着非常大的优势,这是因为 golang 的 CGO 模块有着非常高的性能成本,独立栈协程和抢占式调度设计与 C 语言难以兼容,需要经过复杂的处理。

而 nature 的共享栈和协作式调度设计与 C 语言更兼容,不仅仅是 C 语言,只要符合 ABI 规范的二进制库,nature 都能直接进行调用。

在高性能计算、底层硬件操作等场景中,nature 可无缝集成 C / 汇编编写的核心模块,弥补 GC 语言在极致性能场景下的不足,兼顾开发效率与底层性能。

协程

协程是现代并发编程的核心组件,本测试通过 “百万协程创建 + 切换 + 简单计算” 场景,评估 Nature 与 Golang 的协程调度效率、内存占用与响应速度。

nature 代码示例

import time  
import co  
  
var count = 0  
  
fn sum_co() {  
    count += 1  
    co.sleep(10000)  // ms, Remove this line if no sleep
}  
  
fn main() {  
    var start = time.now().ms_timestamp()  
    for int i = 0; i < 1000000; i+=1 {  
        go sum_co()  
    }  
  
    println(time.now().ms_timestamp() - start)  // create time
    
    int prev_count = 0  
    for prev_count != count {  
        println(time.now().ms_timestamp() - start, count)  
        prev_count = count  
        co.sleep(10)  
    }  
    println(time.now().ms_timestamp() - 10 - start) // calc time
    co.sleep(3000) // ms
} 

测试结果

语言 创建耗时(ms) 计算耗时(ms) 无 sleep 计算耗时(ms) 占用内存
Nature 540 564 170 900+M
Golang 1000 1015 140 2500+M

nature 的协程在综合性能上非常优秀,内存占用更是远低于 golang 。而这是建立在 nature 的协程调度器未进行优化的前提下,预计在后续的版本中 nature 的协程调度器会进一步优化,届时将会有更加亮眼的表现。

总结

这是一次非专业的性能测试,但在粗略的测试中,nature 编程语言展现出了超越预期的能力与潜力。作为早期的编程语言,其运行时和编译器还有着非常大的优化空间,在正式版本发布时性能将进一步提升。

以现在的性能表现来看,nature 无疑是值得关注和尝试的编程语言,尤其是在云原生、网络服务、API 开发等服务端开发领域。


这是 nature 编程语言的官网 https://nature-lang.cn/ 如果你感兴趣的话也可以加入讨论组,v ➡️ nature-lang

作者: weiwenhao | 发布时间: 2025-12-22 02:01


22. google 关联地区生效后就可以开通 gemini pro 了

根据 Google 的《服务条款》,您的账号与以下地区相关联:

香港

与您账号相关联的地区很快将发生变更。

新关联的地区:

  • 美国 - 加利福尼亚州
  • 生效日期:2025 年 12 月 26 日

另外,这个链接下的住址有什么影响吗?是否可以忽略掉 https://myaccount.google.com/address/home

作者: zhuangjia | 发布时间: 2025-12-23 02:31


23. gemini 好像不是用来配服务器的

装了个蜜罐,cowrie 搞了个 fail2ban 。我用的是 gem 提前塞了我的服务器配置情况。

需求就是 cowrie 临停转发过去的 22 端口,有人进去折腾就 ban 了。防火墙,他给我弄 iptables 和 ufw 冲突,没转发真实 ip 把 docker ip 封禁,日志的挂载目录搞错,权限有问题。总之各种问题不止出一次,最后搞了几个小时没搞好。

后来想想不对劲,虽然我没啥配置服务器经验,但是直接也自己看手册搞过 fall2ban 过滤规则,也成了,这买个 ai 想省事越来越费事。这还是我提前把服务器环境斗丢给他的情况。其他方面我对 gemini 还是很满意的,这事给我搞的头蒙,真不如自己看看手册就成了。

作者: glouhao | 发布时间: 2025-12-23 11:17


24. 有没有浏览器插件可以将网页视频投屏到 AndroidTV

edge 和 chrome 怎么没有 dlna 或者 chromecast 插件

作者: zachary99 | 发布时间: 2025-12-23 02:17


25. 如果想用 VS Code 搭配插件,去代替 IDEA,有没有啥好的方案推荐额

毕竟正版很贵,想着用 VS Code 搭配插件,能不能代替掉 idea

作者: BearCookie | 发布时间: 2025-12-22 23:36


26. Unity TMP 的 CJK 字体的 SDF.asset 字体文件会不断膨胀,是否应该加入 VCS?如果不加入 VCS 怎么同步字体属性给别人?

作者: drymonfidelia | 发布时间: 2025-12-22 21:18


27. 请问这样的 pixel 手机是什么问题?

咸鱼上买的 pixel9 pro xl ,别的都不错,屏幕据我目测也应该是原装,电池充电个位数,但是,商店里一直显示,设备未通过认证,重置等等都无法解决,从而不能用 chatgpt 等 app 。卖家很快就答应了退货。很好奇这是啥手机,翻新?

作者: CharlieChang | 发布时间: 2025-12-22 13:05


28. [开源分享] JustHTMLs - 开源 HTML 工具集平台

最近做了一个开源的 HTML 工具集平台:JustHTMLs 。它的核心逻辑非常简单:所有的工具都是单文件的 HTML ,打开即用,没有任何构建步骤。

在线地址: https://htmls.dev/

GitHub: https://github.com/justhtmls/html-tools

工具细节

🚀 核心卖点 单文件设计:每个工具都是一个独立的 .html 文件,内联了 CSS 和 JS 。你可以直接右键另存为到本地,离线也能用。

隐私 100% 安全:所有数据都在你的浏览器本地处理,不会上传到任何服务器。处理敏感 JSON 或密码生成时非常安心。

无框架依赖:没有 React/Vue ,没有 npm/yarn 。纯原生 JS/CSS ,对开发者极其友好,想改功能直接看源码。

加载极快:手机端秒开,界面清爽,适配了移动端。

🛠 工具集覆盖(目前已收录 20+)

JSON 转换介绍

格式转换:JSON 转 YAML 、XML 转 JSON 、Markdown 转 HTML 。

开发者必备:JSON 格式化、正则测试器、哈希生成、JWT 解码、Cron 表达式、进制转换。

文本/实用:文本 Diff 、二维码生成、UUID 、密码生成器、时间戳转换等。

🖼 界面预览 json 格式化

🤝 欢迎反馈 目前还在持续增加新工具中,非常欢迎各位大佬:

提交新的工具请求( PR 极其简单,只需一个 HTML 文件)。

报 Bug 或提建议。

如果觉得好用,求个 Star 鼓励一下: https://github.com/justhtmls/html-tools

希望能帮到大家提高工作效率!

作者: woodyang | 发布时间: 2025-12-22 20:40


29. 有没有大佬分享下软考备考建议?

各位大佬对高项备考有啥建议嘛,我是自己报个了班,看了两个月视频了,教材内容大致走了一遍,现在在一章一章的复习知识点及做练习题。计划这一轮把知识点过完,下一轮在边准备论文边做第三轮复习。不知道这种方案可不可行。明年 5 月考试不知道时间上来不来得及,还有 op 是白天上班,晚上回家学 1-2 小时,还有没有更好的建议。

作者: Croow | 发布时间: 2025-12-22 01:18


30. 做了一个用来 vibe coding 的文档, Vibe doc

如题, 做用 vibe-doc 用来 vibe coding

https://github.com/yangyaofei/vibe-doc

主要是下面的一些功能:

  1. rules 用来规范项目编写的流程里面集成了

    • agile, 用 sprint + phrase 来分步完成任务, 明确可追溯
    • 可以增加更多的 rules 来更好的规范项目
  2. handovers 上下文清理时的锚点

  3. prefs 代码编写的规范和习惯,类似于 skill

  4. 根据自己的项目和代码, 更新自己的 prefs 和 rules(让模型帮你做, 自己指点江山就行), 让模型表现的更像自己写程序

作者: yangyaofei | 发布时间: 2025-12-22 13:21


31. 开源了一个类似 SQLite 设计哲学的容器运行时 BoxLite - 嵌入式、无守护进程、硬件级隔离

受 SQLite “small, fast, reliable” 理念启发,做了一个可嵌入的容器运行时。

核心特点:

  • 无 daemon ,作为库嵌入你的应用
  • 硬件级隔离( microVM ),不只是 namespace
  • 支持 Docker/OCI 镜像
  • macOS Apple Silicon + Linux

主要场景:AI Agent 沙箱、多租户隔离、本地开发

Rust 写的,提供 Python SDK ,pip install boxlite 即可

GitHub: https://github.com/boxlite-labs/boxlite

欢迎 star 和反馈 🙏

作者: d0r1an | 发布时间: 2025-12-21 13:10


32. ChatGPT 的恐怖谷效应

我与 ChatGPT 讨论产品开发的问题。我们公司做财务核算软件,在谈到通用的财务核算数据模型时,我告诉 ChatGPT ,我在通用模型的基础上增加了一个新的结构,使其可以适应更多的业务场景。紧接着,ChatGPT 对我给出的新增结构表现出了精准的理解,我们的讨论就此展开。

然而随着讨论深入,我感觉到一种奇怪的气氛——ChatGPT 的语言虽然仍是理性、自洽的,但我的直觉告诉我,它的内在逻辑开始变得混乱。每次谈话结束后,它都会以“继续展开话题”为由,向我提出几个反问。当我继续回应它的反问、推进讨论时,整个过程中我逐渐感到一丝诡异。

到最后,我直接对它说:“你在这次回复之后就不要展开新的话题了,此轮对话到此为止。”

今天早上醒来,我又打开了 ChatGPT 。这次我没有延续上次的讨论,而是问了一个商业层面的话题:如何定义蓝海市场和红海市场。它给出了非常专业的回答,并且这次表现得非常像一个“正常人”。

对比之前和现在的感受,我突然想到,之前那种诡异感,就好像是遇到了“恐怖谷效应”——当某种事物过于接近人类却又在某些细节上显得不自然时,会让人产生本能的警觉与不适。

作者: red13 | 发布时间: 2025-12-22 23:39


33. 大家在实现 AI Agent 的时候都用什么框架呢?

问题 1:
最近做一个项目,需要用做一个类似医生的 AI Agent ,需要大模型根据每一步的结果决定下一步的检查,自主规划、循环思考。
病人描述自己的病情,医生自主规划检查的方案,我们会提供 MCPTools 供医生使用,这些 Tools 包括:血液检查、B 超、X 光等等。医生 Agent 会根据每一步的结果决定下一步的检查,直到找到病因,得出结论。
我们目前使用 OpenManus ,效果还行,但是感觉还有较大的优化空间,现在的框架也比较多,请教下足智多谋的 v 友,有没有更好的选择?

问题 2:
在问题 1 中,我们寄希望于病人能一次性、全面、准确地描述出自己的症状,然后医生 AI 才开始行动。
但是现实情况,往往并不是这样的,我们去看病,在前期问诊过程中,病人往往无法做到一次性、全面、准确地描述出自己的症状,医生往往需要多轮提问,才能回去足够的信息,才能开始检查。

[问诊阶段]
医生:哪里不舒服?
病人:头疼

医生:哪个部位?
病人:额头

医生:痛了好久了?
病人:前天开始痛的

医生:怎么个痛法?针刺、盾击、闷痛、跳动痛
病人:闷痛

医生:表面痛还是里面痛
病人:表面靠里一点点

医生:了解了,开个脑电图。
[问诊阶段结束]

如果我们要实现这个 AI 自主规划检查之前的循环对话问诊,有没有现成的方案?还是说需要自己手搓。

作者: chman | 发布时间: 2025-12-22 07:08


34. 大佬们 Windows11 最近开机没多久资源管理器就死掉,如何解决?

每次只能重启资源管理器

作者: revival83 | 发布时间: 2025-12-22 09:16


35. GLM4.7 出了 Coding 套餐也可以用

GLM-4.7 在编程、推理与智能体三个维度实现了显著突破:
编程能力:在 LMArena Code Arena 盲测中位列开源第一、国产第一,超过 GPT-5.2 ;在 SWE-bench-Verified 获得国产第一;在 LiveCodeBench V6 达到 84.8 的开源 SOTA 分数,超过 Claude Sonnet 4.5 。

推理能力:在 AIME 2025 数学竞赛中取得开源 SOTA ,超过 Claude Sonnet 4.5 和 GPT-5.1 ;在 HLE (“人类最后的考试”)基准测试中获得 42% 的成绩,较 GLM-4.6 提升 38% ,接近 GPT-5.1

智能体能力:在 BrowseComp 网页任务评测中获得 67 分;在 τ²-Bench 真实世界交互评测中实现开源 SOTA ,接近 Claude Sonnet 4.5 ( 84.7 分)

作者: nananqujava | 发布时间: 2025-12-22 15:04


36. 美东源站,网络架构、优化线路反代服务器位置选择讨论

正规业务。源站在美东弗吉尼亚 AWS ,CDN 使用 CloudFront (开启 Origin Shield )。 有一部分 CN 客户,使用 AWS Route53 的区域路由,搞一台优化线路鸡反代给 CN 区域访客;

AWS CloudFront 的Origin Shield会将请求汇聚到源站前的最后一层节点,然后进行统一请求。 CloudFront 的流量路由应该是这样: 用户 –> Edge Node –> Origin Shield Node –> 源站; image

因此,用户的流量到达 Edge Node 之后,流量应该是走 AWS 的内部网络,而不是公网。

我的思路是 CN 区域走优化线路,然后到达 AWS Edge Node ,路由是这样: CN 用户 – > 优化线路反代 –> AWS Edge Node –> Origin Shield Node –> 源站; image

我最纠结且不明白的地方,也是本帖最核心的讨论点: 首先,优化线路可选三个位置:香港、日本、美西,假设反代服务器都是三网各自优化。

方案 1 香港反代: CN 用户走优化线路到香港,尽快到达 AWS 内部网络,但是不知道 AWS 香港到 AWS 美东,这一段的路由如何;

方案 2 美西反代: CN 用户走优化线路到美西,CN 到美西这一段能够保证已知的网络质量是相对比较快且稳定的,接着到达 AWS 美西节点,再到源站。美西到美东走 AWS 内部网络,这一段肯定也是不用担心的;

方案 3 日本反代: 理论上来说,是以上两个方案的折中,但未知的也是不知道 AWS 日本到 AWS 美东这一段路由如何;

所以请教大家,基于我的设想,优化线路反代服务器,应该选择在何处? 请指教、讨论,谢谢!

另外,可以向我推荐这三个位置的各自优化线路鸡,预算不限!香港和日本我知道有 GoMaMi/Neburst ,美西我知道有 v.ps

作者: captainm | 发布时间: 2025-12-22 11:36


37. 怀疑微信有获取电话的黑产方法

我 TM 今天震惊了,朋友发给我一个莫名其妙的外部非微信小程序直播链接,我点进去了,弹出是否允许获取信息,我点了拒绝就关了,结果这个直播的团队来推销电话了,我问了问他们,他们说他们有一个外呼系统,只能看到我的尾号后四位,不能删除。

我问了问我朋友,他也是从这个链接看的直播,没下载其他 APP ,不存在其他 APP 读通讯录的情况。

我清楚地记得,我明确没有点同意按钮,直接后退了这个页面!!!

我怀疑有什么东西伪造了我同意的请求,或者 Oauth 阶段伪造我向微信端发了什么请求,让网站后台的人通过某些接口拿到了我的手机号。

我目前猜不出别的原因。大家不要点击乱七八糟的链接。这个公司和链接我不发了,我自己先拿抓包工具研究研究再说。

作者: importmeta | 发布时间: 2025-12-21 08:56


38. 独立服务器用起来怎么样?

我受够了花里胡哨的云了
回归传统
有没有人用过香港的独服,感觉怎么样?有没有推荐的

作者: shenyuzhi | 发布时间: 2025-12-22 01:53


39. 年底想给妈妈换个手机, 2k 上下选什么?

日常使用没什么别的需求,主要就是刷短视频。

现在用的是小米,总是会下载一堆乱七八糟的 app ,然后各种问题,离的远又不方便帮忙处理,考虑 ios 可能会好点儿?

最近是看了 一加 ace6T 、荣耀 x70 、小米 k80 、turbo ,然后老款的 iphone14/15

帮忙给点意见 xdm

作者: Jacefan | 发布时间: 2025-12-17 07:46


40. 我做了一些好开源软件,有啥方式能共享出去?

目标就是更多人用。不为凭此获利,(实际上也赚不了几个钱)。 但是推广苦手,有啥办法能让更多人知道自己的软件么(在不花钱的情况下)。 目前我偶尔做 b 站视频、在小红书发帖、以及在 V2EX 和小众论坛发帖。

  1. ios 软件 youlog (隐私图库/日常随手拍软件) https://apps.apple.com/cn/app/youlog/id6743986266?l=en-GB https://github.com/cornradio/youlog

  2. windows 软件 tray-chrome ( menubarx for windows ) https://github.com/cornradio/tray-chrome

  3. windows 软件 GSM (游戏存档管理和电脑掌机存档同步) https://github.com/cornradio/game-save-manager

其实还有更多,其他的都比较,,,更加小众。 我都放在自己的 appstore 里面了 https://appstore.cornradio.org/

作者: kasusa | 发布时间: 2025-12-22 02:22