2010年2月2日火曜日

フレームワーク奮闘記 その4 ライフサイクルって難しい。。。

以下の様な感じにすることになった。

Soilの責務はサービスのライフサイクルの管理
サービスは自身の管理するメニューを持つ。
メニューをクリックすると、実際のアクションが走る。
だから、Soilはサービスのコントローラで、実際的なMVCのコントローラは
サービス。サービスから実際の業務画面の描画やビジネスロジックが乗っていくことに。
ここで、問題。
Soilはサービスのライフサイクルを管理するんだけど、サービスは
自身の中で複数のメニューを持つわけ。
サービス1
   ○○届け
   ○○申請
 サービス2
   ▼▼届け
   ▼▼申請
みたいな感じ。
と言うことは、サービスはどこまでSessionを持ち続けるべきなのか?
今のとこは、違うサービスがリクエストで通知されるまではそのサービスの
Cacheは持ち続けることになっている。ここは、アプリケーションの肝出し
如何様にでもなる分だけ、直接的に速度に関わってくるところでもある。。。
かなり難しい部分です。
サービス1
   ○○申請
   ○○届け
実際には、リンクなり何なりを叩いて○○申請に遷移するわけだから、
○○申請に要るというCache情報を持ち続けていればいいのか??
○○申請⇒○○届けに連続性は無いのか?
果たして、その部分のCache破棄しちゃっても大丈夫なのか?
うーん、難しい。
ここ、本当に難しい。
どうやって解決した方が良いのかな??
悩みます。今日も(笑)