首页 文章 精选 留言 我的

文章列表

共 234744 篇
openKylin走进山东大学 共探开源贡献与实践

openKylin走进山东大学 共探开源贡献与实践

10月23日,开源中国“AI新生派”走进高校活动山东大学软件学院站举行。openKylin 社区作为共建方参与活动,围绕操作系统技术发展、AI 应用探索和开源贡献实践,与高校师生展开交流,帮助同学们了解国产开源操作系统,找到参与社区建设的切入点。 本次活动由开源中国联合学新社主办,openKylin共同参与建设,以&a...

浏览器后退按钮导致页面状态错乱?用 pageshow 事件优雅处理 bfcache 恢复

浏览器后退按钮导致页面状态错乱?用 pageshow 事件优雅处理 bfcache 恢复

在开发单页应用或带表单的页面时,很容易遇到一个隐蔽的问题:用户在页面 A 操作后跳到页面 B,再点击浏览器后退回到 A,发现 A 的界面状态和离开时不一致。典型表现包括弹窗还开着但已失效、下拉菜单状态错位、轮播图停在旧位置、表单值被浏览器恢复但依赖它的组件没同步。根源在于浏览器对后退/前进导航启用了 bfcache(back-forward cache),页...

Go 服务内存持续上涨?一次 sync.Pool 误用导致的对象逃逸排查

Go 服务内存持续上涨?一次 sync.Pool 误用导致的对象逃逸排查

线上 Go 服务运行几天后 RSS 从 200MB 涨到 1.2GB,GC 频率正常但内存不回落,pprof 显示大量临时对象分配在堆上。这个场景在网关、日志采集、JSON 编解码服务里很常见:代码里明明用了 sync.Pool 缓存缓冲区,压测时分配指标很低,长期运行却出现内存上涨。问题往往不在 Pool 本身,而是取出的对象被意外持有、放回前没有重置容量...

Node.js 中 stream.pipeline 在错误处理时的陷阱与正确用法

Node.js 中 stream.pipeline 在错误处理时的陷阱与正确用法

在 Node.js 里处理文件或网络流时,很多人习惯用 pipe() 把多个流串起来,但一旦中间某个流报错,上游流不会自动销毁,导致文件描述符泄漏或进程挂起。stream.pipeline 就是为解决这个问题引入的,它会监听所有流的 error 事件并在出错时统一销毁。不过实际用起来仍然有坑:比如在 pipeline 回调里抛出的异常不会被捕获,或者对 pi...

从“烟囱”到“闭环”:智慧餐饮云平台的架构演进与工程实现

从“烟囱”到“闭环”:智慧餐饮云平台的架构演进与工程实现

传统餐饮系统的根本矛盾不在功能缺失,而在架构的烟囱式割裂:收银、会员、后厨、供应链各自为战,数据无法交叉,决策只能依赖店长经验。当连锁化扩张将单店问题放大为系统性问题时,这种架构的脆弱性迅速暴露——高峰期后厨与前台响应延迟超过20%,订单分派错误率达5%–8%,一次断网就可能造成数万元损失。智慧餐饮云平台的工程本质,是用微...

Go 服务里用 sync.Pool 缓存临时对象,为什么有时反而更慢?

Go 服务里用 sync.Pool 缓存临时对象,为什么有时反而更慢?

写过一段时间 Go 服务之后,大概率会在某个热点路径上看到频繁的对象分配,然后想到用 sync.Pool 来复用临时对象、降低 GC 压力。但实际落地时经常遇到一个尴尬情况:加了 Pool 之后压测的分配次数确实降了,接口延迟却没改善,个别场景甚至比不用 Pool 还慢一点。这个问题在 HTTP 中间件、序列化缓冲区、日志字段拼接、协议编解码这些短生命周期对...

从“接入了模型”到“接入了决策”:DeepSeek 在餐饮智能分析中的工程定位

从“接入了模型”到“接入了决策”:DeepSeek 在餐饮智能分析中的工程定位

餐饮 AI 渗透率仅 15%,但头部企业机器学习渗透率已达 43.5%,库存浪费减少 53%,人力成本降低 18%。这组数据揭示的并非技术不可用,而是大量企业把 AI 用错了位置——停在文案生成和自动客服层面,未能嵌入真正影响利润的决策节点。DeepSeek 在餐饮云平台中的合理角色,不是通用问答入口,而是一个受 schema 严格约...

Node.js 里用 worker_threads 处理 CPU 密集任务时,为什么你的进程还是卡住了

Node.js 里用 worker_threads 处理 CPU 密集任务时,为什么你的进程还是卡住了

线上有个报表导出的接口,用户点一下要等十几秒,期间整个 Node 服务像死了一样,连健康检查都超时。排查下来不是数据库慢,而是导出逻辑里有一段对几万行数据做排序和格式化的纯计算。很多人第一反应是开个 worker_threads 把计算丢进去,结果发现主线程还是卡,甚至更慢了。问题往往不在 worker 本身,而在于数据怎么传、worker 怎么复用、以及主...

Node.js 中 stream.pipeline 的陷阱:错误处理与资源清理

Node.js 中 stream.pipeline 的陷阱:错误处理与资源清理

在 Node.js 里处理文件上传、日志转储或数据转换时,stream.pipeline 几乎是最常用的工具。它把多个流串联起来,并在任意环节出错时自动销毁所有流,避免文件描述符泄漏或内存堆积。但很多开发者只记得 pipeline 比 .pipe() 更安全,却忽略了它在错误传播、回调时机以及异步迭代器混用时的细节。一个典型的翻车场景是:上游流报错后,pip...

从数据孤岛到决策闭环:智慧餐饮云平台与 DeepSeek 的融合架构与工程实践

从数据孤岛到决策闭环:智慧餐饮云平台与 DeepSeek 的融合架构与工程实践

传统餐饮 SaaS 的核心矛盾不在于“有没有数据”,而在于数据在收银、库存、会员、后厨之间以孤岛形态存在,决策仍依赖店长经验。智慧餐饮云平台的演进方向,是将微服务解耦与数据中台作为底座,把 DeepSeek 作为可调用的决策引擎嵌入经营链路,形成“采集—分析—反馈—验证”的闭...

Node.js 中流式响应的背压处理:从内存暴涨到可控传输

Node.js 中流式响应的背压处理:从内存暴涨到可控传输

在 Node.js 里做文件下载、日志推送或者代理转发时,很多人会直接用 fs.createReadStream 接上 res,觉得管道一接就万事大吉。实际跑起来才发现,当客户端网络慢、或者消费端处理不过来时,进程内存会一路涨到触发 OOM,甚至把整个服务拖垮。这个问题根源在于可写流的缓冲区被塞满后,生产者没有停下来等待,而是继续往里灌数据。背压机制就是让生...

个人开发者做A股量化,我最推荐这套

个人开发者做A股量化,我最推荐这套"不折腾"的数据方案(Python 实测接完)

一句话结论:一个人的量化项目里,80% 的时间会死在数据管道上——不是拉不到,是字段对不齐、复权口径打架、指标自己算的和软件对不上。StockAPI 值得推荐的地方不在于"接口多",而在于它把指标算好、结构统一、板块也能取这三件事替你做了,让你能把时间花在策略上。

Golang 中 time.Ticker 未停止导致的内存泄漏与 goroutine 堆积排查

Golang 中 time.Ticker 未停止导致的内存泄漏与 goroutine 堆积排查

线上一个用 Golang 写的定时同步服务,跑了几天之后内存缓慢上涨,goroutine 数量从启动时的十几个涨到几千个,pprof 里能看到大量 runtime.gopark 状态的协程停在 time.Sleep 上。这个服务用 time.Ticker 周期性拉取第三方接口数据,业务代码里创建 Ticker 的地方不少,有些是在每次请求进来时临时起的协程,...

Node.js 中 stream.pipeline 与 async/await 混用时的错误传播陷阱

Node.js 中 stream.pipeline 与 async/await 混用时的错误传播陷阱

在 Node.js 里处理文件上传、日志归档或 CSV 转换时,我们经常把可读流通过 transform 流接到可写流上。早期用 pipe 的问题是错误不会自动向下游传递,目标流不会关闭,文件句柄可能泄漏。后来官方推荐 stream.pipeline,它能在任意环节出错时销毁所有流并调用回调。但很多项目为了写起来像同步代码,会把 pipeline 包在 Pr...

资源下载

更多资源
优质分享App

优质分享App

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册