メインコンテンツ | メニュー

Main Contents

2005年11月27日

開発プロセス

難航中(ーー;
開発効率をあげるべく、いろいろ試行錯誤しているのだがなかなかうまくいかず。
Maven2に移行するにはまだまだの感じだし。
テスト駆動開発しているのだが、コーディングレベルがまだまだ。どうもきれいなコードが書けない。

Dreamweaver8 が素晴らしく使いやすい。
サイトのソースディレイクトリと、Maven war における src/webapp ディレクトリをあわせて、サイトのリモートディレクトリと target/xdoclet/webdoclet ディレクトリ(Tomcatの docBaseでもある)をあわせて、「保存時に自動的にファイルをアップロード」にチェックをいれる。
そうすると、JSPファイルを保存したあと、すぐに Tomcat側へ反映されるので、いちいち war:war-resources とかしなくてすむ。

実践アプリケーション開発講座 - 「Web掲示板の開発」

http://www-06.ibm.com/jp/software/websphere/developer/practice/ ここ、ものすごく参考になりました。 こうやって開発手順を具体的に解説しているサイトってあまりないのよね。。。 このアプリケーションのソースもすべて公開してもらえると非常に強いのだが。。

http://sourceforge.jp/projects/yuichat-p/
このSF.jpのプロジェクトは、僕が、ゆいちゃをPHP4とPostgreSQLで動くように移植したもの。まだβ版なんだよね(苦笑)
移植してない機能とかまだまだあるし。
ていうか、PHP4はともかく、PostgreSQLまで連携させたWebチャットって、ふつうのレンタルサーバーじゃまず設置は無理だよな(ーー;
WebARENA Suite2 はPostgreSQLも使えるのでおすすめです(宣伝)

ゆいちゃですが、JSP/Servlet 版を仕事で作らなくてはいけなくなりそう。今週は、たぶんそれにかかることになるでしょう。そのまえに、やっつけなくてはいけないお仕事がいくつかありますが。。(汗)
バックエンドはPostgreSQLつかう予定。
JSP/Servlet でということなので、 Struts + Spring + JSTL を Maven でというパターンになりそうですが、個人的に XML をたくさん使ってみたかったりするので、すこし変わるかも。
これもSF.jpのさっきのプロジェクト上で開発する予定。

いろいろ調べてるけど、開発プロセスに「これ!」といった定石がみつからないのが現状。
どれもこれもしっくりこない。
おすすめのサイトとかありましたら教えて下さい(汗)

2005年11月21日

PostgreSQL8.1

PostgreSQL を 8.0.3 から 8.1 に更新中。
管理してるサーバーのほとんど全部更新してます。

PostgreSQLのメジャーバージョンが上がったときには、データベースクラスタも initdb し直さなくてはいけないので、アップグレードも結構大変だったりします。
たいていは、マニュアルに書いてある通り、 --prefix を指定して、稼働中のDBとは別の場所にインストールして、違うポートで postmaster を立ち上げて、 pg_dumpall -p 5432 | psql -d postgres -p 6543 のようにするのでしょうが、pg_dumpall はラージオブジェクトの dump ができないので、僕みたいに LargeObject をよく使う人は、pg_dump と pg_restore をつかってDBを一つずつ dump, restore しなくてはならず、面倒です。
そこで、こんなシェルスクリプトを使って、この作業を自動化しています。

ここでは、新しいPostgreSQLを --prefix=/usr/local/pgsql8.1 でインストールして、 initdb して、 postmaster を port 6543 で立ち上げてから、PostgreSQLのスーパーユーザー権限で、このスクリプトを実行します。

#!/bin/sh
# 古いPostgreSQLのprefixを指定
OLD_PGSQL=/usr/local/pgsql
# 新しいPostgreSQLのprefixを指定
NEW_PGSQL=/usr/local/pgsql8.1
# 古い方のPGPORTを指定
OLD_PORT=5432
# 新しい方のPGPORTを指定
NEW_PORT=6543

LD_LIBRARY_PATH=${NEW_PGSQL}/lib; export LD_LIBRARY_PATH

dbnames=`${NEW_PGSQL}/bin/psql -q -t -A -d template1 -c "SELECT datname FROM pg_database WHERE datname != 'template0'"`

${NEW_PGSQL}/bin/pg_dumpall -g -p ${OLD_PORT} | ${NEW_PGSQL}/bin/psql -d template1 -p ${NEW_PORT}
for db in ${dbnames}; do
echo -n " $db"
file=./dump_${db}.tar
${NEW_PGSQL}/bin/pg_dump -b -Fc -f ${file} ${db}
${NEW_PGSQL}/bin/dropdb -p ${NEW_PORT} ${db}
${NEW_PGSQL}/bin/createdb -p ${NEW_PORT} ${db}
${NEW_PGSQL}/bin/psql -p ${NEW_PORT} -q -t -A -d ${db} -c "DROP TABLE tellers"
${NEW_PGSQL}/bin/pg_restore -p ${NEW_PORT} -d ${db} ${file}
[ $? -gt 0 ] && rc=3
done

自動的に、古いDB を dump し、新しい方へ restore するようになっています。

2005年11月16日

Google Analytics

Ajax つかいまくり。
というか、コードを入れてから、24時間は経ったのに、PVがいまだに0とはどういうことねん。。(苦笑)
問い合わせフォーム、Server Error ってなってるし。。。
Googleのエンジニアさん、大変そうだなぁ。。。(同情)

  • by みそ
  • at 01:36
  • in Ajax

2005年11月15日

Ajax

最近、にわかに脚光を浴びている Ajax。
Google Maps とかみて、すげーって思ってたけど、まじめにかなり使えそう。
個人的には、Flashより性に合ってるかも(謎
BiGDesire で使えたらいいものできそうな気はするが、もう遅い。。がんばらねば。

Google Analytic がサービス開始された模様。
さっきまでずっとつながらなかったのだけど、やっとつながったので試してみます。
infoseek アクセス解析ともおさらばかなぁ。
アクセス解析もいろいろ自前でつくったけど、みんな中途半端だったなぁ(じばく)

  • by みそ
  • at 01:36
  • in Ajax

2005年11月11日

はまりどころ

水曜日、目を覚ますと、うちの会社の opteron サーバーが固まってた。原因はディスクエラー。
元々、atacontrol で、 RAID1 にしてあったもの。ad6のHDDが調子悪くなってきてエラーを吐くようになり、縮退運転で、だましだまし運用し続けていたところ、ついにad4までエラーを吐いて固まったらしい。
幸い、データは無事で、リブートしたら、ちゃんと起動する。
でも、これ以上の運用は危険ということで、ディスク交換することに。
通常なら、RAIDでミラーリングして交換するだけなのだけど、5.4-RELEASEよりいいといいう噂の6.0がリリースされたのと、ディスクの容量を120GBから160GBにしたかったので、6.0-RELEASEをクリーンインストールして、ついでに amd64 にすることに決定(この忙しいのにーー;)
いままで、 amd64では満足にJavaが動かなかったので、i386で運用を続けていたのだけど、これを機に amd64 にすることにしました。

OSのインストールとか設定はすんなりできたのだけども、 apache2とsubversionのインストールに大苦戦。
ports の依存関係をしくじったらしい。一旦削除して、依存関係をちゃんと整理したらインストールできました。
でも、なぜかsubversionが正常に動かず。Webからや、svn コマンドに応答せず。とことん黙り続けるーー;
古い方のディスクで起動して、
% svnadmin dump /home/svn/repos > repos.dump
と、レポジトリをダンプして、新しいディスクで restore してやったら、ちゃんと動きました。
i386でつくったレポジトリは、amd64で動かないらしいです。やっぱり。。

ひととおり設定し終わったところで、 RAID1 にする作業開始。
6.0-RELEASE になって、オンボードの sil3114 を認識するようになったので、 atacontrol も幸せに使えるかと思いきや、

The ataraid driver can read the following metadata formats.

ということで、 ataraid ドライバは読み取り専用らしい。
起動時に Silicon Image Medley としてちゃんと認識してくれるのだが、

# atacontrol addspare ar0 ad6

とかやっても、 Device not configured っていわれる。
むりやり rebuild しようものなら、 kernel panic になってしまった(汗)

ということで、 online rebuild は断念。サーバーを一旦落として、 BIOS から RAID1 をつくって、 rebuild しました。10GBで、1時間くらいかかったので、 160GBを rebuild するのに 16時間もかかってしまった(汗)
でも、いまは快調にうごいてます。
と、この忙しいのに強行軍で FreeBSD6.0-RELEASE amd64 にアップグレードした Opteron マシンですが、チューニングが足りないのか、あまりパフォーマンスあがらず。
pgbench も i386 のものとあまり変わりませんでした。
でも、いまのところは非常に安定して動いてます。
ネイティブJDK1.5.0 も快調。
仕事も快調に進むといいんだけどなぁ。。まだまだ前途多難のようです。。。

2005年11月 4日

サスセッティング講座

アクセスログを眺めていたら、「サスセッティング オートバイ」というキーワードで来ているユーザーが居る模様。
Motorcycle のカテゴリにおいてある、「サスセッティング講座」等は、6,7年前に書いた記事^^;
で、Yahooで「サスセッティング オートバイ」とか、「サスセッティング バイク」と検索すると、このBlogが一番上に出てくるではないかい@@;
(ちなみにGoogleではでません)
Yahooがどんなページでも登録してくれた時代に、登録してあったことも関係あるかも。
あまり有用な記事とは云い難いですが、来て下さった方、読んでやって下さい^^;
ご参考になれば幸いです。

2005年11月 3日

Eclipse Web Tools Platform(WTP)

なにやらいろいろつまっていて便利そうです。
以前は、インストールが大変そうだったので、敬遠していたのですが、eclipse.org の更新サイトからダウンロードできるようだったのでインストールしてみました。

  • JSP、XML、HTML、CSS、DTD、JavaScript Editor
  • XML Schema のグラフィカル編集
  • Webブラウザ、TCP/IP Monitor、Tomcat Debug
  • データベース操作、SQL Editor

と、いろいろ便利そうです。
でも、データベースや、SQLはまだまだみたいね。。
JSPとか、HTML、CSSは、Dreamweaver 8がすこぶる快適だし、XML関連は、XMLStudio2(開発テストに参加していただいたもの)があるので、WTPはほとんど使わなかったりする^^;
でも、TCP/IPモニタやデバッガなんかは便利そうなので、いろいろ使ってみようかと思います。

DreamweaverでJSFが使えるようになると強いんだけどなぁ。

Eclipse Web Tools Platform(WTP)の続きを読む

  • by みそ
  • at 00:42
  • in Java

2005年11月 2日

Acid2 Test

Mac OS X 10.4.3 Update で、 Safari がアップデートされ、 Acid2 のテストをパスできるようになったとのこと。

Mac OS X 10.4.3 Update (Delta) について

http://docs.info.apple.com/article.html?artnum=301984-ja

実際にやってみたら、ちゃんと スマイリーが表示されます。ちょっと感激。(:
Safariは input button が独自のデザインなので、個人的にはそれがたまにきず。 button に CSS かけたとき、確認には Firefox つかえばいいのだけどねえ。


Copyright © here.Creative Commons LicenseThis weblog is licensed under a Creative Commons License.