[mayaa-user:898] Re: AutoBuildを行っても初回が遅い

suga [E-MAIL ADDRESS DELETED]
2010年 3月 20日 (土) 17:02:47 JST


suga です。

> 原因はどういったことが考えられますでしょうか。
> また、初回を早くする方法がありましたらご教示願います。

初回アクセス時は初回レンダリング時ということで、レンダリングのための
インスタンス生成などのコストがかかります。
計測された中にクラスロード時間やstatic初期化子の実行時間も含まれていれば
それもかかりますね。


クラスのロード時間やstatic初期化子の実行時間を除いた時間を短縮するには、
根本的には動的なタグの数を減らすこと、ですが、無駄でもないと難しいですね。
なお何も処理しないタグはただの文字列になるので影響ありません。
どうしても速度が必要でメンテナンス性やビューとロジックの分離性が落ちても良い
ということであれば、動的な属性でechoを使うのをやめ、テンプレートに直接
${}を書いてしまう手もあります。


また、autoBuildと同じようにautoBuild.renderMateをtrueにすると、ビルド直後に
レンダリングを実行しようとするため、初回アクセス時のコストを事前にある程度かけて
しまうことができます。
ただしこの際は当然セッション情報などがないため、ログインが必要なアプリケーションなど
では大量のエラーログが出てしまうかもしれませんし、例外が出てレンダリングが
途中で終わるかもしれません。


-- 
suga ( [E-MAIL ADDRESS DELETED] )



2010/3/19 山中孝太 <[E-MAIL ADDRESS DELETED]>:
> やまなかと申します。
>
> mayaa-1.1.27を使用しています。
>
> 2000タグ程度の画面を表示する際、AutoBuildを行っていても、
> 初回アクセス時に時間がかかる現象がでております。
>
> 初回:4秒
> 2回目:0.8秒
>
> 初回と2回目で比較したところ、下記2メソッドに差があるようでした。
>  EchoProcessor.doStartProcess        初回:0~9ミリ秒   2回目: 0〜1ミリ秒
>  ElementProcessor.doStartProcess    初回:0〜11ミリ秒   2回目: 0ミリ秒
>  ※各700回程度コールされています。
>
> 【環境】
>   Container:WebSphere7.0
>   JDK:IBMJDK6.0
>   OS:AIX
>
> 原因はどういったことが考えられますでしょうか。
> また、初回を早くする方法がありましたらご教示願います。
> 以上、よろしくお願い致します。
> _______________________________________________
> mayaa-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/mayaa-user
>


mayaa-user メーリングリストの案内