タグ

ブックマーク / www.drk7.jp (5)

  • Amazon Search のコンテンツ解析ロジックをリファクタリング中

    Amazon Search サービスを開始してから約2年になりました。開始始めは 2004 年 03 月 07 日らしいんですが、自分でも覚えていません・・・ 細かい修正を含めるて数えてみたら、52回目のバージョンアップになりますが、サーバの計算力も Pentium 4 から Athlon 64 X2 と大幅に向上したこともあり、コンテンツ解析部分の計算量を増やして、より適合度の高い関連商品が選択されるようにしてみました。 前より良くなってますよね? (なってなかったらごめんなさい・・・) ※新しいエントリーもしくは古いキャッシュが消えるまでお待ち頂いてからご確認ください。 さて、計算量を増やす代わりに、形態素解析を ChaSen (茶筌)から MeCab に変更しました。MeCab は ChaSen の3〜4倍程度は高速に動作するので、全体としては速度的に速くなっているかもしれません。

  • darts 0.32 + chasen 2.3.3 のインストールでエラーになる件

    mecab 使えよって言われそうですけど、サーバ切替で手数を少なくするため、アプリにはなるべく手を入れたくないであります。 といいつつも、必要最低限の部分には手を入れているわけですが、一部の古いアプリで chasen 2.3.3 を使ったヤツがありまして、仕方なく chasen のインストールをしました。ほとんどのアプリが mecab ベースで作ってあるので、当然のように darts は最新の 0.32 をインストールしてあります。 chasen 2.3.3 は darts 0.2 をベースとして作られているので darts が 0.3 系にあがったときの一部の仕様変更について行けてません。 結果としてコンパイルエラーが発生します。 dartsdic.cpp: In function 'darts_t* da_open(char*, char*, char*)': dartsdic.cpp

  • yum が Loaded plugins: fastestmirror でフリーズしたときの対処方法

    久々にログインするサーバで yum を起動してパッケージをインストールしていたら、途中でフリーズしてしまいました。一向に進まないのでターミナルをもう一つ開いてプロセスを強制終了。もう一度 yum を起動してみたら、Loaded plugins: fastestmirror でフリーズするようになってしまいました。 yum -y install libXext* Loaded plugins: fastestmirror どうやらプロセスを強制終了させたときか、最初にフリーズ状態になったときか、タイミングは不明なのですが、RPM パッケージのデータベースが破損した模様です。そのむかしに経験した覚えがあるので、ぐぐってコマンドを思い出し、対処を施しました。 まずは rpm のデータベースの状態を確認してみます。/var/lib/rpm 配下に存在する __db.* 以外のファイル群が rpm

  • lighttpd + FastCGI は mod_perl + Apache1.3 より1割ほど高速 :: Drk7jp

    巷で超高速 Web サーバとして話題になっている lighttpd を試してみました。lighttpd に関する日語ドキュメントは非常に少なく、ちょっと込み入った設定ファイルの記述方法とかの解析に手間取りました。 lighttpd のコンセプトは、「セキュアで省メモリで高速に動作し、柔軟性もある」なのですが、「lighttpd 公式サイトのベンチマーク結果」や「UnknownPlace. - Catalyst ベンチ」で簡単な Catalyst - Hello.cgi のベンチマークが公開されているとおり、Apache 1系、Apache 2系よりも高速に動作するようです。特に static なページの処理は Apache の 2〜3 倍程度は高速に処理できるみたいです。 また注目すべき点として、Apache + mod_perl よりも lighttpd + FastCGI の方が1割

  • Catalyst + Lighttpd + FastCGI + DBIC + Schema::Loader に関する備忘録 :: Drk7jp

    ここ数ヶ月 Catalyst を触っていなかったらメキメキと記憶から知識が抜けてました・・・orz 恐ろしいことに DBIC もメキメキと忘れてました・・・orz 僕はどちらかというと OR Mapper を使うよりも SQL 直書きしたほうが理解が早い部類の人間なので DBIC つかって distinct とかするコードを書くのが面倒くさくて仕方がない。なので業の Sledge ベースのアプリは Model 部分に自前の DBI ラッパー使ってコネクションとかも管理してます。 ※ココ時代と逆行してるんでしょうね・・・ とはいえ忘れたままは悔しいので、最近ちょっとしたアプリを作るために Catalyst を使って書いていろいろメモったのを備忘録として残して自分用に公開。ってか DBIC のことなら DBIx::Class::Manual::Cookbook - Miscellaneous

  • 1