2007-05-01から1ヶ月間の記事一覧

IEでも動作を確認(RDoc をインクリメンタルサーチする greasemonkey スクリプト - 2nd life)

Trixieに突っ込んでIEでRDoc開いてみたら普通に動いた。素敵。 ただ、何故かは分からないけどIEだとARのRDocが開けない…。XMLパースエラーとか出ちゃう。 全文検索もあることだし、Railsに限ればHTMLHelp(Rails の htmlhelp - 2nd life)の方が個人的には便…

共同開発のコツ

やっていることもあればやっていないこともあり。 時間ができたら読み直して、吸収できるところは吸収していこう。 SBMだと後で読まない事に気づき始めた今日この頃。http://labs.unoh.net/2006/08/post_38.html http://labs.unoh.net/2006/08/trac_qatestin…

Tracインストール成功 & カスタマイズ

Apache2.0.59 + mod_python + 基本認証で動いた。Apache2系+FastCGIはRailsで懲りているので動かす気は起きない。 これだけでもアクセス権限で躓いたりと、結構な時間を食ってしまった。 mod_pythonでTracを動かすhttpd.confの内容。最後にコピペすればOK。 …

実行後に謎の警告

Tracのソース内で使っているC APIのバージョンがPython2.5のC APIと違うって事で警告が初めに出る。 一応動いているので問題はないと思うんだけど、気になるから覚書。 /usr/local/lib/python2.5/site-packages/libsvn/fs.py:5: RuntimeWarning: Python C AP…

RHEL4にApache 2.2.4インストール

躓いたのは以下の2点。 どちらもWindows版では起こらない事だと思う。 ./configureでエラー。 すべてのリクエストが403 Forbiddenとなる 前者は http://www.tymy.net/~matsu/nucleus/item-1001.html を参照。 configureのオプションに with-included-apr を…

RHEL4にTracインストール

yumやapt-getなし。全部手動で入れる。躓いたところは以下の二点(最終的にはまだあった)。 sqliteのインストールディレクトリを変える(ex:home/hoge/sqlite)とpysqliteのコンパイルが通らない trac-admin test initenvでエラーが起こる。 前者は/usr/local…

Rubyでは制御文までオブジェクトです。

print( "#{ if true "hoge" else "foo" end} bar" ) #=> hoge bar おお、これは凄い。 若干キモ臭も漂うものの、やっぱりRubyは素敵。 参考 http://ruby.mirror.easynet.be/ja/column/v0004.html

Apacheでインストールされているモジュールを確認する

httpd -l とすると以下のような実行結果が返る。 ./bin/httpd -l Compiled in modules: core.c mod_authn_file.c mod_authn_default.c mod_authz_host.c mod_authz_groupfile.c mod_authz_user.c mod_authz_default.c mod_auth_basic.c mod_include.c mod_fi…

file_columnプラグインでお手軽アップローダ作成

インストール 適当な名前でRailsアプリ作成 ruby script/plugin install http://opensvn.csie.org/rails_file_column/plugins/file_column/trunk ディレクトリがtrunkで掘られるのでfile_columnにリネーム 動作確認 コントローラとアクション、モデルとか一…

RMagickをWindows環境にインストール

Rubyで画像処理がしたくなったのでRMagickをインストール。 Windowsでも動いた。 インストール http://rubyforge.org/projects/rmagickからrmagick-win32をダウンロード。 アーカイブを解凍後、ImageMagick-6.3.0-7-Q8-windows-dll.exeを実行。インストール…

MySQLクエリ最適化 & パフォーマンス & 負荷分散人気記事まとめ

はてブのmysqlタグのトップ200件を見て参考になりそうなサイトを列挙。 後で読む。http://tech.media-index.jp/2006/11/mysql_1.html DSAS開発者の部屋:5分でできる、MySQLのメモリ関係のチューニング! MySQLクイック・リファレンス 現場指向のレプリケーシ…

Railsアプリで実行できるrakeタスク一覧を表示する

rake -Tでrakeタスクの一覧を表示できることを知った。 capistranoはrakeタスクを追加するらしいけど、それも見れるみたい。 とりあえずテスト環境で動かしてみた。 rake db:fixtures:load # Load fixtures into the current environment's database. Load s…

ActiveRecordの内部実装を垣間見る その1

ARの実装とRuby処理系のTimeに関する実装でハマる - Lazy Technology にも書いたけど、ARはDBMSのカラム情報に基づいて、格納された値を自動的にキャスト(変換)する。 ar = AR.new ar.id = "hoge" => "hoge" ar.id => 0 キャストするのは格納時ではなく出…

静的ファイルを管理するクラス

負荷対策の為にバッチで予めHTMLを作っておくのは多くのサイトでやっていることだと思う。 Railsでは静的ファイルはrhtmlにしてrender :partialで読み込むか、File.readで読み込むかだろう。 そして、毎回ファイルのIOが発生するのは無駄って事で大抵キャッ…

Magic Multi-Connectionsを試してみる(MySQL版 + 重み付けによる負荷分散)

http://d.hatena.ne.jp/Rommy/20070514/1179164848 sqlite3を使用したMagic Multi-Connectionsの分かりやすいサンプルコードが合ったのでMySQL版を作ってみた。 ただこれだけじゃ芸がないので、1.http://blog.tkmr.org/tatsuya/show/311-twitter-db-railsで…

InnoDBでファイルコピーでバックアップを取る方法

MyISAMではテーブル毎にデータファイルが作成されるが、InnoDBではMySQL4.0まではすべてのデータベースのデータを一つのファイルで管理していた(mysqlroot/data/ibdata1)。 しかし、MySQL4.1以降はInnoDBでもテーブル毎にデータファイルを作成することができ…

Inside Hatena Bookmark's Backendの動画

naoyaさんがはてブのバックエンドを紹介していたYAPCのPDFが欲しいな、と思ってググッたらなんと動画が合った。思わぬ掘り出し物。 しかも資料が英語なので発表も英語なのかな、と思っていたら日本語で発表している! なんという幸運。ありがたやありがたや…

はてなワンライナーコンテストRubyだけまとめ

はてなブックマーク - どうしてプログラマに・・・プログラムが書けないのか? 記事よりみんなのサンプルコードの方が楽しい。 ワンライナーもいいけどこういう時ってコメント欄に書くんじゃなくて編集欄にみんなでガリガリ書くのはどうなんだろ。Wikiっぽく…

環境チェックに使えそうなメソッドたち

コンソールから色々調べたい時には ruby script/console 以下、環境の確認に便利なメソッドたち。 Rails::Info Railsの動作環境を表示。 Welcome aboard画面のリンクやruby script/aboutと同じ結果が返る。 しかしこれ、InfoってModuleクラスなのになんでこ…

ERB記法メモ

改行やら空白を良い感じに制御する記法が合ったと思ったんだけど、Google先生に聞いても(%とか記号が聞けないのが痛い)パッとしなかったので自分用に覚書。 Rubyのコードを実行。 Rubyのコードを実行し、その結果を出力する。 タグ以下はすべてコメント 改…

ar_fixturesが遅い

ユニットテストがしたくなったのでとりあえずar_fixturesとyaml_wamlをインストールして動かしてみて10分ほど放置。だがまったく終わらない。 インタラプトしてカウンタを仕込んで目検してみるに、どうも秒間5〜6件程度しか処理できていない気がする。 対象…

Windows版Apache2.0でmod_proxyを使う

Windows版Apache2.0にmod_proxyを使う。 躓いたところは二箇所。 Windows版だとmod_proxyだけじゃなくてmod_proxy_http.soもロードする必要がある。 「すべてのリクエストをリバースする」には/*ではなく/のみ。ワイルドカードは必要なし。 LoadModule proxy…