私のVaadin 7アプリケーションでは、重い視点があります。サーバー側は非常に速く動作します。私のinit()メソッドのすべてのロジックは100〜150msですが、ブラウザでのレンダリングには多くの時間がかかります(コンポーネントの数によって異なります)。今、Google Chromeでこのビューを表示するには10秒です。パフォーマンス向上のためのVaadin 7コンポーネントの遅延ロード
私はこのビューのパフォーマンスを最適化する方法を探しています。私はLazyLoadWrapperを見つけましたが、少し古くなっています。
ユーザーエクスペリエンスとビューレンダリングのパフォーマンスを向上させるために、Vaadin 7.6のこのコンポーネントに似ていますか?
これは、このパフォーマンスの問題を再現できるデモプロジェクトVaadin Demo Projectある
を更新しました。ソースとVaadinのテーマをコンパイルするために、プロジェクトフォルダから
mvn clean install
:ください、単純な実行のMavenコマンドこのアプリケーションを起動するために
。その後、
とcom.techbook.ui.Application
クラス(このクラスはmainメソッドが含まれている)と、アプリケーションを実行するには、組み込みのTomcat 8に開始し、次のURLにアクセスしてくださいされます。
http://127.0.0.1:8080/vaadin-ui/#!decisions/123/Name
com.techbook.ui.view.decision.DecisionView
を - と図であり、前述のパフォーマンスの問題。
ビューは、どのコンポーネントが含まれていますか?そして何人ですか?私の経験では、Vaadinは特にいくつかの(ネストされた)レイアウトでは多くのコンポーネントを持つように設計されていません。コンポーネント/レイアウトの数を減らしてみてください。 –
質問にスクリーンショットを追加しました。ご覧のとおり、入れ子になったコンポーネントを持つGridStackがいくつかあります。私はメインのGridStackで80個の要素を処理する必要がありますが、この場合、私のビューは〜15-20秒程度ロードされます...今、私はいくつかの遅延ロードを導入することを考えています – alexanoid
要素の半分レンダリングされる。ブラウザの時間はそれから短縮されますか?私はどのようにコンポーネントの怠惰なロードを実装することができます(あなたが述べたアドオンを除いて)考えていない。 –