開発日誌1998年6月
- '98/06/01
- [webpage]
5月分までの日誌を別ページに分割しました。
- [ppsd]
LinkDownクラスのコーディング進行中です。WWWcpのコーディングを見てはいるのですが、
人のプログラムは理解しにくくて結局自分独自に書いています。
- '98/06/02
- [ppsd]
リンク先を抽出する部分はできました。抽出したリンク先は相対アドレスなので絶対アド
レスに変換する必要があります。
- '98/06/03
- [ppsd]
LinkDownクラスは完成していないのですが、新しくBookmarkクラスを作成してネットスケー
プのbookmarkファイルを変換するようにしました。結構便利に使えているので作成しただ
けの事はあるみたいです。しかし、変換処理に非常に時間がかかっていてどうすれば早く
なるものかと頭を悩ませています。
- '98/06/04
- [ppsd]
LinkDownクラスの修正に再度取り掛かりました。抽出したURLは相対アドレスですので、
これを絶対アドレスに変換しました。URLクラスを使うと機能の追加が簡単にできてしま
い感動です。
- [ppsd]
HTML内にBASEタグが設定されている場合の対応ができました。BASEを書いてあるページを
知らないのでテストはしていません。
- '98/06/05
- [ppsd]
offLineでの処理中に同じファイルをずっと読み続けるバグがありました。cacheファイル
から読み込んで処理する場合にはcache-controlでrevalidateなどの設定をしないように
変更すると正常に動作するようになりました。ただ、なぜそれでうまくいくのか仕組みは
よくわかっていません。
- [ppsd]
リクエスト用ヘッダーを独自に作成する機能を追加しました。
- [ppsd]
ハードコーディングしていたbookmarkファイル名をppsd.confで設定できるようにしまし
た。
- [ppsd]
bookmarkファイルの書き換え処理はサーバ立ち上げ時に一回だけにするように修正しまし
た。正規表現による書き換えが遅いための一時的な対応です。
- [ppsd]
一回のLinkDown処理では同一URLに対して重複チェックを行い無駄な処理をしないように
しました。
- '98/06/06
- [ppsd]
フレーム再読み込み処理をしても、lastURLが変更されないバグに対処しました。ステー
タスコード304が返る場合にはすでに保存されているURLなら再保存するようにします。こ
の処理はブラウザ稼働中にサーバの再起動をした場合正常に動作しない可能性があります
がほとんどの場合は大丈夫のはずです。根本的な修正はまた次の時に考えます。
- [ppsd]
proxySetの切替え機能を急に思い立って追加してしまいました。
- [ppsd]
LinkDownクラスで保存が失敗している原因は不明です。帰って来るステータスコードがお
かしいのではないかと思いますので明日その部分をチェックします。
- '98/06/07
- [ppsd]
LinkDown処理で保存に失敗している原因がわかりました。サーバに送っているリクエスト
メッセージに無条件にIf-Modified-Sinceが付いているため、304が返ってしまいデータが
ありませんでした。リクエストデータ作成時にIf-Modified-Sinceを削除する必要があり
ます。その後、If-Modified-Sinceが付加されるのは問題ありません。
- '98/06/08
- [ppsd]
If-Modified-Sinceを削除するために、HeaderにclearFieldメソッドを追加しました。そ
のためにHeader内のデータ構造も変更しています。その後、Headerのメソッドを項目別に
持つのは無駄なような気がしたので削除しようとした所から、クラス階層の修正にまで発
展しました。スッテプ数も減り構造もすっきりしたのでいい修正だったと思います。
- '98/06/09
- [ppsd]
LinkDown処理でブラウザに画面が返ってこない問題の原因がわかりました。理由はスレッ
ドの実行をrun()で起動したつもりという間抜けなものでした。正しいstart()を実行する
事によって正常に動作するようになりました。
- '98/06/10
- [ppsd]
HTMLの解析のために使用している正規表現パッケージを自作の物からOROの物に変更しま
した。速度がすごく早くなるかと期待しましたが、体感ではわかりません。しかし、実際
に時間を測ってみるとBookmark処理が54秒から30秒に縮まっていますので冷静に考えれば
すごいスピードアップです。ただ、もっとスピードアップはしたいので処理をもっと見直
していくつもりです。
- '98/06/11
- [ppsd]
正規表現パッケージをOROMatcherに変更しましたが、どうもデグレードを起こしているよ
うです。正しく、リンク先を抽出できなくなりました。今日はずっと追っているのですが
どうもよくわかりません。うーん困りました。
- '98/06/12
- '98/06/13
- [environment]
作業が進まないので、気分転換にxemacsをインストールして使いこなそうとしています。
ただし、まだ全然使いこなせていない状態でかえって作業スピードは遅れそうです。
- '98/06/14
- [environment]
xemacsのカスタマイズがうまくいかないので、今までのmuleの環境にw3を入れられないか
と思ってまた入れ直してみました。しかし、その場合w3がエラーになってうまく起動でき
ません。入れ換えてもxemacsは起動できるので、メイン環境をmuleに戻してxemacsは地道
に整備していきたいと考えています。
- '98/06/15
- [private]
キャッシュするファイルのファイル名を元に戻しました。これは通常の形式とずれている
のがやはり今後の運用で心配になってきたのと、ファイルのセーブに失敗した場合の対応
方法について少しいいアイディアが浮かんだためです。ファイルのセーブ方法はまだ前の
ままですが早めに修正します。
- '98/06/16
- [ppsd]
proxySetをfalse(ppsdからproxy serverを経由しないという意味です)にしてインターネッ
トにアクセスするとLastURL処理がうまくいかないバグを発見しました。proxySetがfalse
だとリクエストラインが変化するので、そのリクエストラインで再度呼び出しても正確に
動作しないのが原因でした。proxySetがfalseの時はサーバに渡すデータのみ変形してリ
クエストライン自体は変更しないように修正しました。
- [ppsd]
キャッシュファイルを更新する際のファイル名を複数の候補から選択できるような仕組み
を作成しました。ファイル名の複数の候補の生成部分はこれから作成します。
- '98/06/17
- [ppsd]
ファイル名が問題でエラーになった場合に備えて、キャッシュファイルの候補を二つ作成
できるようにしました。ただ、現在私の環境ではエラーにならないのでテストとかはして
いません。
- '98/06/18
- [webpage]
タイトルを「くぼたハウス」から「JavaとLinuxと怠惰な日々」に変更しました。「くぼ
たハウス」というのはあかりハウスのパロディのつもりでしたが、誰もそんなのわからな
いだろうと言う事と、やはりタイトルはできるだけ内容を的確に表している方がいいと言
う事が変更した理由です。
- '98/06/19
- [private]
相変わらずスランプで作業が進みません。困ったものです。
- [ppsd]
Bookmark処理の時間を測った所、HTMLのコンストラクタ処理は3秒でaddTarget処理に30秒
かかっています。いい加減な文字列処理の問題が大きいみたいですので、この処理の無駄
を省く事も含めて根本的な改善が必要です。
- '98/06/20
- [ppsd]
HTMLの解析処理がうまくいっていなかった原因は、OROMatcherがきちんと日本語に対応し
ていないのが原因のような気がしてきました。仕方なく自作の正規表現パッケージに戻し
ましたがつらいところです。
- '98/06/21
- [private]
近所のレンタルビデオ屋さんが料金を半額にしていたのでたくさん借りてしまいました。
その結果全然作業していません。堕落街道まっしぐらです。
- '98/06/22
- [ppsd]
HTML処理の中のメソッドaddTarget()は非常に重い処理でしたので、改善のための修正を
しました。文字列の追加処理をStringに"+="で追加する方法からStringBufferにappendで
追加する方法への修正です。その結果BookmarkクラスでaddTarget()にかかった時間が30
秒から1秒以内に短縮されました。ものすごいスピードアップで驚いてしまいました。こ
れで正規表現処理の部分がOROMatcher並に早くなってくれればと思います。OROMatcherを
使用すると約3秒ですが、自作のRegexpでは15秒もかかってしまうのです。
- [ppsd]
自作Regexpクラスに小文字大文字を区別しないモードを追加しました。
- '98/06/23
- [private]
秋葉原に行き、本とコンピュータ部品を買って大散財をしてきました。それ以外について
は何もたいした事はしませんでした。
- '98/06/24
- [ppsd]
LinkDown処理を連続して実行すると複数のセッションでデータのダウンロード処理を実行
するようになっていました。これはネットワークとサーバに対して迷惑だと思うのでバッ
クエンドでのダウンロード処理は常に一つずつ実行するように修正しました。いい加減な
修正なので非効率だと思いますがリリースできるようにはなります。
- '98/06/25
- [private]
今日はメールをたくさん書き、かつ失業認定の日だったのでウェブの更新をさぼりました。
- '98/06/26
- [environment]
ノートパソコンのshabbyは液晶デスプレイが壊れてしまったのでネッ
トワーク越しのバックアップディスクとしか使っていませんでした。
しかし、Windows95のテスト環境が欲しいのとvncというリモートサー
バを使えばshabbyからコントロールできるみたいなので、Windows
用の環境設定とvncのインストールを行ってみました。
vncを使ってみた感じはとりあえずとろいです。1ライン1ラインず
つ描画しているのが目に見えるような感じです。まあ、1ラインと
言う事はなくもう少し太いみたいですが。でも、shelbyからコント
ロールできれば今まで全然使っていないのが使えるようになるので
活用していきます。
- [environment]
この前秋葉原で買ってきたAMDK6-200にCPUを換装してみました。
CPUの差し替えにずいぶん時間がかかってしまったので内部周波数
を200MHzにするのはとりあえずあきらめて使っています。ただ、立
ち上げ時にCPUの速度について何か表示がでていたので自動的に内
部周波数をあげてくれてるのかもしれないなどという、希望を持ち
ました。でも、実際の周波数がいくらかはわからないでいます。
330.96 BogoMIPSというのは内部周波数いくらなんでしょうかね。
CPU換装の結果は少し早くなっているようです。でも体感速度とし
てはあまり変わっていない感じです。やはり内部周波数は166MHzで
動いているのかな。
- '98/06/27
- [environment]
web上で調べた結果、CPUの周波数はやはりジャンパーをいじる必要があるみたいでした。
でもちらっとでは見つからなかったという事は、部品の下に隠れているみたいです。部品
の取り外し方がよくわからないのでちょっとゆううつです。
- [ppsd]
Windows95上で動作する事を一部確認しました。始めにフレームをサポートするブラウザ
をインストールする必要があります。また、インストールのためのファイルには必要とす
るhtmlファイルも含めるようにしなくてはいけません。テストの時htmlファイルがないた
めにわけのわからない動作をしている部分があって調査に手間取りました。
- '98/06/28
- [private]
日曜日は休日ということで何もしませんでした。ppsdのリリースを明日に控えているのに
まだドキュメントを何も作成していないとは困ったものです。
- '98/06/29
- [ppsd]
Windows95での動作確認を終了しました。URLDownQueueクラスがないというエラーが出た
のですが、jarファイルの中身を見るかぎりでは存在するのでえらく迷ってしまいました。
結局、URLDownQueueクラスの親クラスであるMessageQueueクラスがなかったためでした。
jarファイルに追加してうまく行くようになりました。
- '98/06/30
- [ppsd]
ppsdのドキュメント書きを実行しました。一応できあがったけれどドキュメント書きは面
倒です。明日リリースするけれど自分のウェブページの整備は間に合いませんでした。ま
あ、ぼちぼちやっていきます。
e-mail: (em6t-kbt@asahi-net.or.jp)