IEを除くdojox.charting.Chart2dすべてのブラウザーで正常に動作する 6 つのグラフを含むページがあります。IE8 では、グラフの読み込みに 1 分以上かかります。
プロファイリングは、時間の大部分が によって費やされていることを示しています。57 のdojo._getMarginBox呼び出しには 48 ~ 66 秒かかります。
- 他の誰かがこれを経験しましたか?
- 他に何か提案はありますか (IE を取り除く以外に、残念ながらオプションではありません)。
IEを除くdojox.charting.Chart2dすべてのブラウザーで正常に動作する 6 つのグラフを含むページがあります。IE8 では、グラフの読み込みに 1 分以上かかります。
プロファイリングは、時間の大部分が によって費やされていることを示しています。57 のdojo._getMarginBox呼び出しには 48 ~ 66 秒かかります。
さて、私たちはそれを掘り出しました。問題は、dojo._getMarginBoxの邪悪な速度が遅く、呼び出しあたり約850ミリ秒でした。私が忙しくプロファイリングしてヒントを探している間に、他の誰かが(明らかに無愛想な)HTMLコードを調べて、閉じられていないブロックなどを閉じるなどしてクリーンアップしました。
パフォーマンスは即座に約5倍向上しました。
現在の作業仮説は、IE8がゴミの山非正規のDOMツリーを処理する必要がある場合、囲んでいるボックスを見つけるのは非効率的です。
これにより、少なくともLINUXではChromeとFirefoxのパフォーマンスも向上しました。