Cacoo開発チームの木村(@cohhei)です。Cacooでは図形の描画にScalable Vector Graphics(以下、SVG)を採用しています。本記事では、CacooのサーバーサイドにおけるSVGの生成手法の刷新と、それによって得られた図のエクスポート機能のパフォーマンス向上についてご説明します。 要約 サーバーサイドでのSVGの生成方法を変更しました。 結果として、SVGエクスポートが約4倍速くなりました。 PDFエクスポートもその恩恵を受けて早くなりました。 図の内容に依存しますが、1シートあたり1.5〜2倍ほど高速化しました。 技術的にはHeadless Chromeからjsdomを使ったSVG生成に切り替えました。 クライアントサイドのTypeScriptのコードをNode.jsで実行させています。 SVG?エクスポート?生成?とは? SVGとはXMLをベースとした2