告别SVG,我们用Canvas重绘火焰图
We rewrote our custom visualisation renderers from SVG to be in Canvas

我们彻底重构了Polarsignals的性能分析器仪表盘,将渲染引擎从SVG切换到了Canvas。之前虽然通过并行化将SVG渲染速度提升了百倍,但DOM节点的开销仍是瓶颈。新的Canvas方案采用即时模式API,直接操作像素而非管理成千上万的DOM树,配合零拷贝的Arrow数据传输,让缩放和滚动操作变得丝般顺滑。实测数据显示,在相同数据量下,Canvas渲染的中位时间大幅缩短,彻底消除了浏览器在样式计算和垃圾回收上的冗余负担,用户体验从“能看”变成了“飞快”。
"Canvas是即时模式API,没有树结构,只有绘图上下文,浏览器将绘图指令转化为像素后就将其遗忘,没有任何残留需要垃圾回收器处理。"