トップ 最新 追記

3 日坊主日記


2003-11-01 [長年日記]

_ [lc2003] 帰還

準備不足でお茶も濁せませんでした。きゅう。

ソースボーチは我が社で? 位牌と抱き合わせ。^^;

flash_file_format_specification.pdfのCライブラリ版はそろそろopenswf.orgで出してくれないかなあ。

CHISEというかKAGEと文字鏡とは切れている?


2003-11-02 [長年日記]

_ [tDiary] up

ruby と tdiary を cvs up。メモリを増設。 uconv-0.4.11 を入れる。 /usr/bin/ruby に ln -s。かずひこさんに mod_ruby 対応をお願い。委員会の spec を書き換え。

_ [Apollo] set_path_for_ruby.rb

どうなっているのかよくわからない。

レジストリ、ステ。と言えるようになるのはいつの日か。

_ [Apollo] win32 handle

unsigned なのに rb_int2inum に渡してる箇所がある。

_ [CHISE] make_ids_db.rb

まだ終わらないYo

_ [CHISE] sample-lc2003.rb

win32 での動作を確認。

_ [CHISE][BUG] t/tc_char.rb

環境:

  • ruby 1.8.1 (2003-11-02) [i386-mswin32]
  • ruby-chise-20031004.tar.bz2
  • uconv-0.4.11-i386-mingw32-1.8.tar.gz
  • bdb-0.4.8-i386-mingw32-1.8.tar.gz

結果:

D:\tmp\ruby-chise\t>ruby tc_char.rb
Loaded suite tc_char
Started
../src/db.rb:113: [BUG] Segmentation fault
ruby 1.8.1 (2003-11-02) [i386-mswin32]
...

bdb のバグだろうか。


2003-11-03 [長年日記]

_ [CHISE][KAGE]考えてみる

KAGEを見て(コードはまだ公開されていないようだが)思ったこと。

小さなフォント(8,9,10,12,14,16付近)をきれいに作れる?

ひらがなはどうするのだろうか? (すを寸から作りたい^^;)

KAGEの点のとりかたはベジェ曲線なのだろうか?

(Chaonには)筆順は含まれないのだろうか?

はらい・とめ・はね・たく・てんなど(書道ではなくて)習字的な要素も保存すれば、保持する点の数が少なくてもフォントはそれらしくなるのでは。教科書体風も作れそう。

線情報だけでなく空間情報も要るかも。


2003-11-04 [長年日記]

_ [ming][lc2003] Presentation with Flash (knok)

野首さんのFlashプレゼン。しゃべりがじゅーよー。

'b'キーで前のページに戻ります。

_ 一部写真がなくなっておりますが…^^;

_ [Apollo][Exerb] あの件

Delphiのランタイムライブラリ(実行時ライブラリ)もくっつけられるようになったらしい。

Yuya君 ほかにやることはないのか? ^^;

_ 英語

真意を伝えられるようになりたい。(誤解されまくりの予感)


2003-11-05 [長年日記]

_ Red Hat Linux

errata support が切れるのは痛いなあ。

Fedora か Debian か…悩む。


2003-11-06 [長年日記]

_ [Ruby] rubydotnet-2

うささんの KOF2003 Ruby on Windows を見て RAA:rubydotnet-2 を試してみました。

rubydotnet-bin-0.3.0.zip を拾って…

すばらしい。普通に動きます。^^;

_ [Ruby] mod_rubyでのMySQL/Ruby

KOF2003でのPHPな発表で、持続的にデータベース接続を行うと、Apacheの子プロセスごとにDBコネクションが張られてしまうという話があった。

mod_rubyでMySQL/Rubyを使って持続的にデータベース接続を行う際にも同じことがいえると思うのだが、どうすればいいのだろう。

_ [Ruby] mod_rubyでのMySQL/Ruby(2)

http_loadをcygwinで作ってストレステストしてみた。

# 1回目
$ ./http_load -parallel 8 -seconds 60 bench.uri
446 fetches, 8 max parallel, 1.06214e+06 bytes, in 60.006 seconds
2381.47 mean bytes/connection
7.43259 fetches/sec, 17700.5 bytes/sec
msecs/connect: 57.1906 mean, 160 max, 10 min
msecs/first-response: 414.5 mean, 2704 max, 10 min
HTTP response codes:
  code 200 -- 446

_ 全て通ったが ps aux | grep httpd | wc -l としてプロセス数をみるとmysqldのプロセス数がhttpdのプロセス数を上回っている!

# 2回目
440 fetches, 8 max parallel, 1.04254e+06 bytes, in 60.056 seconds
2369.41 mean bytes/connection
7.3265 fetches/sec, 17359.4 bytes/sec
msecs/connect: 66.9818 mean, 170 max, 10 min
msecs/first-response: 371.441 mean, 3055 max, 10 min
4 bad byte counts
HTTP response codes:
  code 200 -- 436
  code 500 -- 4

_ byte count wrong が出る。プロセス数はhttpd=18, mysql=20。(以後この値のまま)

# 3回目
799 fetches, 8 max parallel, 1.57274e+06 bytes, in 60.007 seconds
1968.38 mean bytes/connection
13.3151 fetches/sec, 26209.3 bytes/sec
msecs/connect: 18.4593 mean, 110 max, 0 min
msecs/first-response: 228.788 mean, 1662 max, 0 min
214 bad byte counts
HTTP response codes:
  code 200 -- 723
  code 500 -- 76
# 4回目
486 fetches, 8 max parallel, 974767 bytes, in 60.007 seconds
2005.69 mean bytes/connection
8.09906 fetches/sec, 16244.2 bytes/sec
msecs/connect: 74.5864 mean, 201 max, 10 min
msecs/first-response: 277.71 mean, 3084 max, 10 min
42 bad byte counts
HTTP response codes:
  code 200 -- 444
  code 500 -- 42

_ ApacheのMaxSpareServersの値は20。MySQLのmax_user_connectionsのデフォルト値ていくつだろうか。

なんにせよコネクションをつかんで離さないようである。

_ sql relay

ぐぐると firstworks: sql relay というのがあるらしい。Ruby拡張ライブラリも含まれているらしい。 Ruby/DBI には dbd_sqlrelay があるらしい。試してみたい。

_ Pound

あと試してみたいのは

POUND - REVERSE-PROXY AND LOAD-BALANCER

『mod_perl における C10K Problem』という発表資料を見て。

本日のツッコミ(全1件) [ツッコミを入れる]

# oqlmzgc shxi [gsfwtdpa tpyc ylrqv gktwv rqakf yjzsunrla bzlmjpx]


2003-11-08 [長年日記]

_ SQLRelay

忘れないうちに作業記録。

* rudiments-0.25.1.tar.gz

* sqlrelay-0.33.1.tar.gz

sqlrelayはrudimentsを必要とする。

_ 最初はRPMで入れようと思ったけど

* sqlrelay-0.33.1-i386-RPMS-rh7x.tar.gz

に入っているruby拡張ライブラリは1.6対応のようである。

rudimentsのRPMは

* rudiments-0.25.1-i386-RPMS-rh7x.tar.gz

_ 単純にconfigure; makeしたらDBはMysqlで言語はC, C++, Perl, Python, Rubyと認識された。

C++マングリングにひっかかってsqlrelay.soが動かなかったが、src/api/rubyでextconf.rbをちょっといじって-lrudiments -lsqlrclientを通すようにしたらうまくいった。

/etc/ld.so.conf に /usr/local/firstworks/lib を追加して ldconfig -v 。

LD_LIBRARY_PATH は…結局要らないんだっけ。

_ DBI

MySQL/RubyからSQLRelay/Rubyに移行するにあたって、いったんMySQL/RubyからDBD::Mysqlに移行して(ラッパをかぶせて)、それからDBD::SQLRelayに移行してみる。

* ruby-dbi-all-0.0.21.tar.gz

--with=dbi,dbd_mysql,dbd_sqlrelay

_ MySQL/RubyとDBD::Mysqlの違い

* quoteの挙動が違う。DBIでは''で囲まれる。

* query(sql)はexecute(sql)

* DBIのexecuteで得られる要素はDATEの場合DBI::Dateになる。to_sを付ければ互換。

* DBDのrowsはaffected_rowsなので、SELECTでは使えない(エラーで-1が返る)し、変更しないUPDATEは数えない。

* insert_idが使えない(DBD::Mysqlなら__insert_idが使えるがDBD::SQLRelayにはない…)ので、かわりに SELECT LAST_INSERT_ID() を使う。

と、はまりながら移行を進める。

_ Mysql/Ruby互換DBD::Mysqlラッパ

逆行してみたり。

  require 'dbi'
  
  module DBI
    class StatementHandle
      alias fetch_row fetch
    end
  end
  
  MYLOG = open('my.log','a')
  MYLOG.sync = true
  
  trace_var(:$my){|val| 
    MYLOG.print Time.now.ctime, "\t", $$, "\t", "$my=#{val}", "\n" 
  }
  
  def my_connect
  # $my = DBI.connect("DBI:Mysql:dbname", 
      "user", "passwd")
    $my = DBI.connect("DBI:SQLRelay:\
;host=localhost;port=9999;socket=/tmp/mysock.socket", 
      "user", "passwd")
  class << $my
    alias dbi_quote quote
    
    def quote(value)  # mysql.quote
      dbi_quote(value) \
        .sub(/^'/, '') \
        .sub(/'$/, '')
    end
    
    def query(sql)
      MYLOG.print Time.now.ctime, "\t", sql, "\n"
      execute(sql)
    end
    
    def insert_id
      res = query("SELECT LAST_INSERT_ID()")
      row = res.fetch_row
      id, = row
      id
    end
    
  end
  
  end
  
  def my_disconnect
    $my.disconnect
  end

_ DBD::SQLRelay

DBD::MysqlをDBD::SQLRelayにすればok(すばらしいっ!)。

secure>=1のときはMysql, SQLRelayなどDBDの名前はcase sensitiveになる。

driver_urlの : は2個必要(db_argsを省略しても要る!)。これにはまるとdbi.rbのload_driverでエラーになる。

_ SQLRelayの設定

マッピングは /usr/local/firstworks/etc/sqlrelay.conf をXMLで書いて行う。

RedHatだと勝手に /etc/init.d/sqlrelay がインストールされる。 /etc/sysconfig/sqlrelay に instance id を書けばok。

起動順・終了順がおかしかった(SQLRelayの前にMysqlが立ち上がってないとSQLRelayが失敗する) /etc/init.d/mysql の #chkconfig 行を修正して chkconfig 。

_ rorm

確かにオブジェクト指向とRDB(というかSQL)は相容れないように思う。ということでぐぐってみる。

RDB(DBI経由)とRubyクラス(というかStruct)をマッピングするためのライブラリ。

* rorm-0.1.1.tar.gz

SELECTで全部拾ってくるのか。まあこのように割り切ったほうがいいのかもしれない。

本日のツッコミ(全2件) [ツッコミを入れる]

# たむら [やりたかったことを、やっていただいて Age]

# moriq [計測結果をまとめてみます(改善されたみたい)。 dRuby 版も考えてみたい。]


2003-11-09 [長年日記]

_ [Ruby][Delphi][Kylix] Ruby Component

Pirmin Kalberer さんが Kylix/Delphi のRubyコンポーネントを公開している。

_ Sourcepole

SourceForgeのようなものだと思うが日本語がきちんと出る。

_ RedHat/Fedora 統合スレ Part17 from 新まるちめでぃあ日記

ほほう。こいつはいいことを聞いた。やってみよう。

_ Yes, do as I say!

吉と出るか凶と出るか。いざっ

_ Red Hat 7.3 to Fedora Core 1

おおいつの間に!

ということでRedHat7.3からいきなり入れてしまいました。(無謀)

apt-get update
apt-get upgrade
apt-get dist-upgrade
...
Get:273
244MB

_ compatとかopenssl096bとかいろいろ互換パッケージも入ったもよう。思ったより問題なく復旧。(Mysql, SQLRelayは見た目問題なし)

_ qmailの再コンパイル

qmail(supervise)をコロす手順を忘れて^^;苦労しました。(cd /service/qmail rm /service/qmail (シンボリックリンクを切って) svc -xd . log)

error.h:
- extern int errno;
+ #include <errno.h>

_ Apache2になってる!

httpd.confの修正で苦労しました。(VirtualHostのport指定必須, rotatelogsが動かない, UTF-8固定, etc)

mod_rubyのコンパイルで苦労しました。(-I/usr/include/apr-0)

_ rpm

たくさん .rpmnew .rpmsave .rpmorig ができたので見直し必要。

_ apt

apt が delete されてる。^^;

_ Apache2 mod_ssl

httpd.confにmod_sslの記述がないぞ? と探し回ったあげく conf.d/ssl.conf にあることに気づく。 conf.d/ という仕組みはいいかも。

CGIのコードが見えてたり index.htm index.cgi が通らなかったり…あうあう

_ up2date

aptがきえたのでyumを入れるのかなと思ったが /usr/share/rhn/RPM-GPG-KEY-fedora を使って up2date できるらしい。

よくわからんけど 66.187.232.35,66.187.232.50:80 を通せばいいみたい。

kernelが kernel-2.4.22-1.2115-nptl という妙な名前に。

_ rcpthosts

お前かアァァァァ

多大なるご迷惑をおかけしましたことをおわび申し上げます。

_ qmail, vpopmail, daemontools, tcpserver(ucspi-tcp)

再々コンパイル。もうすっかり設定方法を忘れてる。

error.h:
  extern int errno;
+ #include <errno.h>

_ rpm のありがたさが身にしみる。

まだたまに(頭が切れてるのはなぜ)

rrectly built binary which accesses errno or 
h_errno directly. Needs to be fixed.

_ を見るような気もする…

追記: tcpserver(ucspi-tcp)を忘れてました。

_ tripwire

rpmで入ったやつがsegvる。

software interupt forced: segmentation fault

_ むう。

本日のツッコミ(全1件) [ツッコミを入れる]

# たむら [チャレンジャーですなぁ(w >7.3 to Fedora Core1]


2003-11-10 [長年日記]

_ [qmail] ezmlm

Reply-Toを付けてくるメーラがあるらしく。

$ echo reply-to >> headerremove

2003-11-11 [長年日記]

_ [Ruby] win32-apache2-ruby1.8.1-mod_ruby (VC6SP5)

できたよ!

追記: Mysql(DBI) との連携を確認。速すぎ!

追記: howto.txt の手順で作った mod_ruby.so を置きました。使われる方は自己責任でお願いします。

_ [qmail] vpopmail はまり道

覚えているうちになんとなくまとめ。

_ ユーザ名にドメインをつけたくない(自分のドメインだけ)。

configure に --enabled-default-domain=<mydomain> をつけましょう。

_ 外部から外部への配信を許可したい(POP before SMTP)。

configure に --enable-roaming-users=y をつけましょう。

_ 自分のドメインは問題ないんだけど、バーチャルドメインが拒否される。

rcpthosts にバーチャルドメインを書きましょう。

_ バーチャルドメインは問題ないんだけど、自分のドメインだけ届かなくなった。

locals から自分のドメインを外しましょう。

vpopmail の FAQ に書いてます。

_ いつのまにかファイルの所有者が変わってる!

vpopmail のインストール時に ~vpopmail 配下のファイルは容赦なく chown されるらしい。

_ いつのまにか alias 設定が効かなくなったんだけど。

UNIXアカウントと同名のユーザの alias ( /var/qmail/alias/.qmail-<user> ) は無視されるみたい。ホームの .qmail に書かないといけません。(例えば tdiary さん^^;)

_ 最新版(開発版)はどこだ?

実は vpopmail.sf.net qmailadmin.sf.net にあります。


2003-11-13 [長年日記]

_ Fedora

ユーザの声。

それと、サーバー反応が早くなりましたね!

FTPでアクセスするととってもよくわかります。

昨日までは「う…」とつまづく感じだった(笑)

昨日に比べてメールサーバーのレスポンスが良くなったような気がします

_ 私は全然体感できてないんだけど。^^;

_ Native POSIX Thread Library (NPTL)

osnews.com によると

The kernel (2.4.22-1.2115.nptl) has been updated to include NPTL (as you will notice in the GRUB boot screen) and in Fedora's own words 'Fedora Core 1 includes the Native POSIX Thread Library (NPTL), a new implementation of POSIX threads for Linux. This library provides performance improvements and increased scalability' so I guess that new kernel will delight some and bore others.

_ Fedora Core 1

Excite翻訳によると

ソフト帽芯1

_ Googleイメージ検索してみると確かに帽子だった。

_ RubyRing

前後がつながらない。ちぎれた鎖。クリティカルチェーン。

_ .ssh

authorized_keys は chmod 0600 でないとだめぽ。

_ grub

partition との関係がわかってきた。

/dev/hda1 /boot
/dev/hda2 /

_ とすると

root (hd0,0)
kernel /vmlinuz ro root=/dev/hda2
initrd /initrd-...
boot

_ こうなる。注意したいのは root の設定で、これは以降の kernel, initrd の設定を楽するためだけにあると考える。kernel 起動時の / とは異なることがある(上記のように)。

Tab を打って補完するポイントは

root (hd0,[Tab]
kernel /[Tab]
initrd /initrd[Tab]

_ このへん。


2003-11-15 [長年日記]

_ [Fedora] up2date

移動したらしい。

/etc/sysconfig/rhn/sources:
yum updates-released http://download.fedora.redhat.com/pub/fedora/linux/core/updates/1/i386

2003-11-16 [長年日記]

_ [Apollo] ap-637, ap-837 released

Ruby-1.6.8と1.8.1の両方用意するのちょー面倒くせー

_ Perl oo

Perl oo のお勉強。

  my $self = { @_ };

_ うひょひょ。

Rubyのキーワード引数はまだかなあ?

本日のツッコミ(全2件) [ツッコミを入れる]

# Yuya [そろそろ1.8系に移行してもいいのでは?]

# moriq [ええ。でも1.6系の最終版は必要かも。]


2003-11-20 [長年日記]

_ Web Publisher を使ってみる

試してみた。

* amrita-1.8.2.tar.gz

* com.narucy.webpub_0.5.3.bin.dist.zip

へのパッチ

とりあえず presets/company を新規作成できることだけ確認。


2003-11-23 [長年日記]


2003-11-24 [長年日記]

_ ボーランド

ボーランド本社移転だとかでDelphi Directがひどいことに。

本日のツッコミ(全1件) [ツッコミを入れる]

# gfxgztraps [Hello! Good Site! Thanks you! uirtqggngnq]


2003-11-26 [長年日記]

_ CVS Ruby

win32 で通らなくなってる

util.obj : error LNK2001: 外部シンボル "_getwd" は未解決です

昨日覚えた技で戻してみる。

cvs -z4 -d :pserver:anonymous@cvs.ruby-lang.org:/src \
  up -j 1.38 -j 1.37 util.c

できた。

nmake "configure_args=--with-iconv-dir=d:/usr --with-openssl-dir=d:/usr"

追記: ありがとうございます。できました。

本日のツッコミ(全1件) [ツッコミを入れる]

# eban [nmake -a config.h]


2003-11-27 [長年日記]

_ _| ̄|○

o几
_no

_ AA

絶句。

本日のツッコミ(全1件) [ツッコミを入れる]

# sgtzacrtci [Hello! Good Site! Thanks you! rjozugdbaeb]