- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- フレームワーク/Webアプリケーション へ行く。
- 1 (2007-12-30 (日) 02:57:47)
- 2 (2008-01-01 (火) 02:31:32)
- 3 (2008-02-11 (月) 15:29:12)
- 4 (2008-09-27 (土) 23:47:41)
- 5 (2008-09-28 (日) 00:04:48)
- 6 (2008-12-14 (日) 01:48:49)
- 7 (2009-08-30 (日) 11:16:02)
- 8 (2009-09-24 (木) 00:13:34)
- 9 (2009-11-07 (土) 01:16:23)
- 10 (2011-01-10 (月) 23:50:57)
- 11 (2011-01-10 (月) 23:57:41)
- 12 (2011-01-11 (火) 00:07:24)
- 13 (2011-01-11 (火) 00:15:51)
- 14 (2011-01-16 (日) 00:00:43)
- 15 (2011-03-17 (木) 12:24:32)
- 16 (2011-03-17 (木) 17:03:19)
- 17 (2011-03-17 (木) 17:11:47)
- 18 (2011-12-14 (水) 01:29:17)
- 19 (2012-05-03 (木) 11:27:47)
- 20 (2012-06-01 (金) 06:18:27)
- 21 (2012-08-04 (土) 05:53:12)
- 22 (2012-08-27 (月) 20:00:52)
- 23 (2012-09-20 (木) 07:29:45)
- 24 (2013-01-07 (月) 14:34:31)
- 25 (2013-01-28 (月) 07:19:27)
- 26 (2013-03-05 (火) 05:17:33)
- 27 (2013-03-20 (水) 22:35:34)
- 28 (2013-03-23 (土) 16:02:58)
- 29 (2013-04-16 (火) 18:18:00)
- 30 (2014-03-01 (土) 00:24:59)
- 31 (2014-03-01 (土) 00:40:56)
- 32 (2014-03-01 (土) 01:10:08)
- 33 (2014-03-25 (火) 00:28:33)
- 34 (2016-02-27 (土) 06:37:16)
- 35 (2016-02-28 (日) 00:08:25)
- 36 (2016-02-28 (日) 07:35:37)
目次 †
関連 †
- :/クエリーにはユースケース名+ステップ名や番号を
- :Done/HTTP_ACCEPT…をどう反映するか
- :Done/ビューとコンテキストの統合
- :Done/他言語版をどこに置くか
- :RenameLog/2013
- :i/HTTPSを使わせる
- :i/クエリーパラメーターはユースケースクラスのもの
- :i/クラス別のセッションデータ
- :i/フレームワークの実装案
- :i/プロトタイピング
- :i/プロトタイピング/01
- :i/プロトタイピング/03
- :i/ページセットを2つ用意しなくてもサイドバーは実装できる
- :i/ログインはWebフレームワーク、ユーザー管理はWikiフレームワーク
- :t/Web
- fw/Web
- テンプレート
- ビュー
- フレームワーク
- フレームワーク/Webアプリケーションでやること
- フレームワーク/WikiEngine
- フレームワーク/WikiEngineでやること
- メモ化
- 全てURIで
フレームワーク/Webアプリケーション †
思い付き †
実装 †
サーバー側キャッシュ †
同じクエリーを受けた場合、キャッシュしておいたHTMLを返せばいい。
何を同じだと見なすかはキャッシュの有効期限[?]に。
エラーページにクエリーを †
エラーページには送られてきたURLクエリーを載せる。
再送信できるように。
さらに、コピペで保存できるように。
エラーページへのURLを示す。
ページ内のテキストで。
このときのURLはエラーページのものではないからブラウザーのアドレス欄には出ない。ページ内のテキストでやる必要有り。
再送するには再送ボタンかエラーページに再アクセスして再送ボタン。
やること †
- 入力
入力からセッションデータ保存まで。 - アプリケーション呼び出し
エントリーポイントは1つでいい。 - 出力
出力するHTMLを受けて、
代替文字列の置き換え(セッションデータに置き換える)まで。 - エラー処理
- ファイルのオブジェクト化
ファイルはFlyweightであるべき。
競合問題 †
複数のファイルをロックするため、WikiEngineの冒頭で必要なファイル全てにロックをかけられるかどうか知りたい。
FlyweightFactoryが一度呼び出されるだけで複数のFileを生成できると便利。
Fileを生成してしまっていい。ロック済みのFileが要求通りに返せたことが分かればいい。
要求が1つでも叶えられなかったらFileを全て破棄。
確実にロックするため、ブロッキングモードでロック試行する。
そのため、FlyweightFactoryではロック数を参考にして、ロック処理をするかどうか判断。
1プロセスが1トランザクションのようなもの。
アトミックに。
設計 †
図1 †
コード †
プロトタイピング[?]の実装。
擬似言語 †
[CGIから呼ばれて…]
- URLクエリーを得る。
- POSTされたデータを得る。
- クッキーを得る。
- セッションデータを復元する。
- セッションデータを更新する。
URLクエリー、POSTされたデータ、クッキーをセッションデータに格納。 - フレームワーク/WikiEngineを呼ぶ。
- セッションデータをファイルに保存する。
ファイル名はセッションIDによる。 - 出力にクッキーを付加。
- 出力。