元RX-7乗りの適当な日々 このページをアンテナに追加 RSSフィード Twitter

RX-7(FD3S)WRX STI関連のキーワードで検索されて来られた方へ。
右サイドのカテゴリ『』をクリックすると関連する項目だけが表示されます。
日々の写真は『Flickr』で公開しています。

2009/06/28

Windows Mobile 初期化

Touch Diamondがブートしなくなった、ので再構築したメモ


先日、Touch Diamondで、WMWifiRouter(Touch Diamondを無線LAN経由でモデム化するアプリです)を使っていたところ、バッテリーが切れそうになり、WMWifiRouterのアプリを停止させたところ、残念なことにアプリの停止途中でバッテリーが切れて、Touch Diamond本体の電源が切れてしまった


でまぁ、充電しながらTouch Diamondの電源をオンにしてみたのだが、なかなかブートしない

しばらく待っていると以下のような画面がっ!


http://farm3.static.flickr.com/2454/3667891758_0831d76b16.jpg

えーっと、ブートできないってか。。。


The device is unable to boot because either you have turned off the device incorrectly or tried to install an application from untrusted source, Press SEND to reset your device or press any other button to cancel, This operation will delete all your personal data and restore the device to its factory default settings.

だそうだ。ソフトリセットも効果無し。

何とかする方法を色々考えたけど、面倒くさくなったのでハードリセット(初期化)することにした。やれやれ。


ハードリセットの方法

以下を参考に実行。

1人で操作するのは、かなり無理があった(3ボタン同時押し、スライタス利用含w)のだが、頑張った。

  1. 裏蓋を外し、スタイラスを抜く。
  2. VolDown(-volume)とEnter(○の中央)を押し続ける。
  3. 2の状態のまま、リセットボタンを押す。
  4. デバイス側を工場出荷にするならVolUp(+volume)
  5. デバイス側を工場出荷し内部ストレージをフォーマットするならVolDown(-volume)
万が一の為のハードリセット方法 - Kzou’s Diary (^^ゞ

http://farm4.static.flickr.com/3630/3667086573_82bde37c16.jpg

今回はメインメモリのみだったので、"VolumeUp"ボタンを押した。


http://farm3.static.flickr.com/2574/3667086725_b4e7b83272.jpg

リストア開始。しばし待つ。


http://farm4.static.flickr.com/3368/3667892310_652a7e186d.jpg

こんな感じでリストアは進んでいきました。Windows Mobile・・・。

なんとか内部ストレージに置いていたデータは無事でしたが、メインメモリの方はすっからかんです。

電話帳も入れ直し。バリバリ使っている携帯電話ではなく、あくまで外出時のインターネット接続のWifiモデムとして使うことがメインだったので、ま、たいしたことはないのですが。


再構築にあたって入れたアプリ

今後も増え続けるだろうけど、現時点のものをリストアップ。

# 以前、何をインストールしていたのか覚えていない・・・。

とにかく動きがモッサリなので、"Diamond TF3D Config"、"Pocketの手"、"Advanced Configuration Tool"などを活用したチューニングは必須。あとバックアップソフトはやっぱり入れておくか・・・。(あるのかな?)



参考


TOUCH Pro & Diamond 究極活用読本 (inforest mook)

TOUCH Pro & Diamond 究極活用読本 (inforest mook)

HTC Touch Pro & Diamond ハイパーナビゲーター

HTC Touch Pro & Diamond ハイパーナビゲーター

2009/06/27

我が家のインターネット接続のスループット(2009/Summer)


先日、引っ越しまして、ネット環境が変わったので測定してみました。

以前の住まいの結果(東京, 2007)は以下。


さて、今の住まいは、比較的都内よりの千葉県内で、接続キャリア・プランは、Bフレッツ光(マンション, プラン2ハイパーVDSL)+OCNです。

# 入居前は、LAN配線方式と聞いていたのだが・・・。


で、gooスピードテストで計測してみたのですが、結果は41.63Mbpsでした。マンションVDSLの割には、なかなか優秀じゃないでしょうか。

f:id:rx7:20090628185047p:image

ご参考までに。

2009/06/26

訃報: Michael Jackson


世界最高峰のエンターテイナー、マイケル・ジャクソンが50歳という若さでこの世を去った。

本当に残念でなりません。深く追悼の意を捧げます。

# Twitterですら、この震撼に耐えられずダウンしたとか。


以下、厳選3曲。

# 不謹慎ながら↓のThrillerは何かを連想する。


Thriller

D


Bad

D


Smooth criminal

D


キング・オブ・ポップ-ジャパン・エディション

キング・オブ・ポップ-ジャパン・エディション

ビデオ・グレイテスト・ヒッツ~ヒストリー [DVD]

ビデオ・グレイテスト・ヒッツ~ヒストリー [DVD]

Thriller (25th Anniversary Edition CD/DVD)

Thriller (25th Anniversary Edition CD/DVD)

2009/06/24

Amazon CloudFrontがAWS Management Consoleから管理できるようになった


Amazon EC2やAmazon Elastic MapReduceをブラウザから管理できる「AWS Management Console」が、Amazon CloudFrontに対応したみたいです!


AWS Management ConsoleAmazon CloudFrontの概要や使い方については以下リンク先をどうぞ。


ちなみに、Amazon S3については、まだAWS Management Consoleから扱えない模様。

なぜAmazon CloudFrontから先に対応したのだろうか?という点は置いておいて、雰囲気を簡単にお伝えしますね。


早速アクセスしてみる

ブラウザから、AWS Management Console (for Amazon CloudFront)にアクセスしてみましょう!

https://console.aws.amazon.com/cloudfront/


f:id:rx7:20090624223842p:image:w480

こんな感じで、上部のタブが1つ増えています。


f:id:rx7:20090624223843p:image:w480

管理画面(ダッシュボード)は、この通りシンプルです。

上部は、管理しているAmazon CloudFront対象のバケットの一覧で、下部はそのバケットの詳細です。


f:id:rx7:20090624223844p:image:w480

Amazon CloudFrontからの配信対象を、新規に追加することはもちろん、変更や削除(というかDisable)することも可能です。

基本的に、公開されているAPIを全てManagement Consoleから実行することが出来るみたいで、CNAMEやログ出力の設定も、この画面から操作することが可能となっています。


これで、あとはAmazon S3についても、同様にAWS Management Consoleから操作・制御できるようになると、より便利になりそうですよね。


最後に、Amazon Web Servicesから公式なデモンストレーションの映像が公開されているので、さらに詳しい雰囲気を知りたい場合は、どうぞ〜。


参考



まとめ


2009/06/23

Linuxでユーザのuidは重複して作成することができる


"useradd"コマンドのmanを眺めていたら、そんなオプションがあってビックリした。

useradd実行時に、"-o"オプションで、重複したuidのユーザを作成することができるらしい。

-o

重複した (固有でない) UID でユーザを作成できるようにする。

404 - エラー: 404

知らんかった。


が、、、このオプションはどういった時に活用できるのだろう?

1人がある事情で、ホームディレクトリやログインシェルを使い分けたい時?それってどんな場合なんだろう。使いどころが分からないなぁ・・・。


とりあえず、使う日が来るかわからないけど、頭の片隅に置いとこ。


追記

ブコメでいくつか回答をいただきました!

都合、OSユーザ名のエイリアスを作りたい時とかに使うのですね。なるほど。


参考

2009/06/19

wvWaveのconfigure時に「error: No package 'libgsf-1' found」エラーが出たので対処


さっき(glibのmake時に「error GNU libiconv not in use but included iconv.h is from libiconv」エラーが出たので対処)の続きで、次はwvWave(MS Word関連のライブラリ)をconfigureした時のエラーを対処した、これまた私的なログ。

# MS関連の文書をHyper Estraierで全文検索するときに使いますのん。


対象は以下のURLからダウンロードしたwvWaveのバージョン"1.2.4"。

$ wget http://jaist.dl.sourceforge.net/sourceforge/wvware/wv-1.2.4.tar.gz

上記からダウンロード後、以下のオプションで"./configure"を実行したところ、、、

$ ./configure --prefix=/usr/local

以下のようなエラーが出た。

checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for GLIB... yes
checking for GSF... no
configure: error: No package 'libgsf-1' found

間違いなく"libgsf-1"は既に入っていて以下の通りだ!

$ ll /usr/local/lib/libgsf-1.*
-rw-r--r-- 1 root root 1006670  6月 19 19:51 /usr/local/lib/libgsf-1.a
-rwxr-xr-x 1 root root     989  6月 19 19:51 /usr/local/lib/libgsf-1.la
lrwxrwxrwx 1 root root      20  6月 19 19:51 /usr/local/lib/libgsf-1.so -> libgsf-1.so.114.0.14
lrwxrwxrwx 1 root root      20  6月 19 19:51 /usr/local/lib/libgsf-1.so.114 -> libgsf-1.so.114.0.14
-rwxr-xr-x 1 root root  683046  6月 19 19:51 /usr/local/lib/libgsf-1.so.114.0.14


なんて思っていたら、以下のような感じで環境変数を指定しないといけないようだ。

PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/ ./configure --prefix=/usr/local

上記の指定で、問題なく"./configure"は実行でき、インストールは無事完了。

多分、上記で触っていた某環境は、pkg-configのライブラリが、"/usr/lib/pkgconfig"にも入っていて、そちらが優先されていたのが原因だと思われる。ふぅ。

glibのmake時に「error GNU libiconv not in use but included iconv.h is from libiconv」エラーが出たので対処


タイトル通りですが、Hyper Estraierによる全文検索まわりのセットアップを行うべく、glibのコンパイル時のエラーを対処した私的ログ。

実際にコンパイルしたのは、以下からダウンロードしたglibのバージョン"2.20.3"。

$ wget http://ftp.gnome.org/pub/gnome/sources/glib/2.20/glib-2.20.3.tar.gz

上記からダウンロード後、以下のオプションで"./configure && make"したところ、、、

$ ./configure --prefix=/usr/local
$ make

以下のようなエラーが出た。

libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -I.. -DG_LOG_DOMAIN=\"GLib\" -DG_DISABLE_CAST_CHECKS -DG_DISABLE_DEPRECATED -DGLIB_COMPILATION -DPCRE_STATIC -DG_DISABLE_SINGLE_INCLUDES -pthread -g -O2 -Wall -MT gconvert.lo -MD -MP -MF .deps/gconvert.Tpo -c gconvert.c  -fPIC -DPIC -o .libs/gconvert.o
gconvert.c:55:2: error: #error GNU libiconv not in use but included iconv.h is from libiconv
make[4]: *** [gconvert.lo] エラー 1
make[4]: ディレクトリ `/root/install/glib-2.20.3/glib' から出ます
make[3]: *** [all-recursive] エラー 1
make[3]: ディレクトリ `/root/install/glib-2.20.3/glib' から出ます
make[2]: *** [all] エラー 2
make[2]: ディレクトリ `/root/install/glib-2.20.3/glib' から出ます
make[1]: *** [all-recursive] エラー 1
make[1]: ディレクトリ `/root/install/glib-2.20.3' から出ます
make: *** [all] エラー 2

なので、"./configure"時に以下のようなオプションを付ける事で対処。

$ ./configure --prefix=/usr/local --with-libiconv=gnu

これで、問題なくmakeすることに成功。glibのインストールは無事完了。

2009/06/17

demo.redmine.orgはHerokuで動いているらしい


Herokuは、RailsなどのRuby製のWebアプリケーションが稼動するプラットフォームをホスティング形式で提供してくれるPaaS(Platform as a Service)です。(ちなみにHerokuのさらにバックエンドは、これまた今一押しのAmazon EC2ね。)

Herokuの概要については、以下のリンク先の説明が詳しいので割愛。


If you were wanting to evaluate Redmine without having to set it up or wanted to try out some of the new features coming in 0.9, the Redmine demo is now back online. I've set it up on Heroku using their free plan and a PostgreSQL database.

Redmine Demo - now available at demo.redmine.org - Redmine Blog - The Official Redmine blog -

上記を読む限り、Redmineの公式デモサイトは、Herokuのフリープランで動かされているらしい。

データベースはPostgreSQLを使っているとのこと。


$ dig demo.redmine.org

〜〜〜省略〜〜〜

;; ANSWER SECTION:
demo.redmine.org.       10800   IN      CNAME   redmine-demo.heroku.com.
redmine-demo.heroku.com. 10800  IN      CNAME   heroku.com.
heroku.com.             2180    IN      A       75.101.145.87
heroku.com.             2180    IN      A       75.101.163.44

確かに。


ちなみにRedmineのデモサイトは、以下から。


このRedmineのデモサイトでは、まだリリースされていない次期バージョンの新機能も試せるとのことですが、こういった開発中の動作確認用のテストサイト(場合によってはデモサイトも)の稼働環境は、まさにこのHerokuのようなgitリポジトリと超簡単に連携できる仕組みを持つPaaSのようなサービスで動かすのが良いですね。

gitにpush/pullするだけで、自動で実行基盤にデプロイされる、的な手軽さが良い。


そんなナイスなHerokuの使い方は、↓あたりの説明が詳しいので、興味があれば是非。

2009/06/10

Tokyo Cloud Developers Meetup #02

Tokyo Cloud Developers Meetup #02 に参加してきました


前回(Tokyo Cloud Developers MeetupでLTしてきました - 元RX-7乗りの適当な日々)に引き続き、今回も参加させていただきました。

今回のテーマは「Google AppEngine」です。


http://farm4.static.flickr.com/3644/3614425594_162e5e6c51.jpg

かなり、多岐に渡って(Python/Java〜JRuby〜PHP)熱いご発表が多く、興味深く聞くことが出来ました。

また、懇親会で、お話させていただいた方もありがとうございました!

あと、今回の会場はリクルートさんだったのですが、月曜にOPENしたばかりの会場で、電源/無線LAN完備で、大型液晶モニタも随所にあったり、Ust用にカメラがぶらさがっていたり、と、ものすごく良い設備でした。羨ましいっす。

http://farm4.static.flickr.com/3318/3613607523_0ddb73ec73.jpg


とりあえず、あまり整形していませんが、今日取ったメモを写真と一緒に貼り付けておきます。

# (腰を痛めていまして、、、今日はもう限界^^;)


続きを読む

2009/06/08

okyuu.comにインタビュー記事が掲載されました


以前、勉強会でご挨拶させていただいたことが縁となり、okyuu.comさんにインタビューをしていただく機会があり、本日掲載されました。


RX-7とサーバ運用の意外な共通点 並河祐貴さんのエンジニアライフ - 特集:No okyuu, No Life


okyuu.comさんで、数々の方々のエンジニアライフをリレー形式で綴っていく素敵な企画。

・・・えー、その場の思いつきでしゃべったことが明文化されるのは、なかなか恥ずかしいものがありますねww

でも、私のこれまでをありのままに話したので、これからエンジニアになろうか迷っている方の参考に少しでもなればよいかと思っています。


# 私なんかで良かったのかと思いつつも、これもまたエンジニアの一例ということで。。

# とりあえず、リレー形式ということなので、次はid:moroな人を紹介した。


追記

残念なことに"okyuu.com"がサービス終了されるとのことなので、スナップショットを貼っておきます。

※ 問題あればご連絡ください。

http://img.f.hatena.ne.jp/images/fotolife/r/rx7/20100621/20100621143522.png



age++;

Ruby Enterprise Editionを使って、Railsアプリの使用メモリ量を削減(43.5%カット)してみた


ある事情で、サーバ上で多数のRailsアプリケーションを動かす必要性にせまられたので、1Railsアプリあたりの使用メモリ量を少しコンパクト化するべく、「Ruby Enterprise Edition」(REE)を試してみたところ、確かにメモリ使用量が削減された結果(当方例で約43.5%減)になったので、そのメモをエントリに残しておきます。


Ruby Enterprise Edition (REE) とは

マイコミジャーナルから引用させていただくと、、、

REEはCRubyをベースにして開発されている実行環境。オフィシャルのCRubyと比較して平均で33%ほどRailsアプリケーションが使用するメモリ量を削減できるという特徴があるほか、実行パフォーマンスも改善される。

REEにおける性能向上の仕組みはガベージコレクタに対してCopy-on-Write拡張を導入することと、メモリアロケータ (tcmalloc)を改善する方法がベースになっている。最初のプロダクトは数ヶ月以上前から公開されており、すでにNew York TimesやShopify、37signalsなどの企業が自社のRubyアプリケーションの実行環境をREEへ移行している。

no title

とのこと。

メモリ使用量の削減に加えて、実行パフォーマンスも改善されるという優れもの。

ただし、Rubyはバージョン1.8.6ベースのものとなるので、この点は注意が必要です。


参考

REEとPassengerのインストール

ソースコードやバイナリは、以下URLからダウンロードできます。

尚、Ruby Enterprise Editionをインストールすると、PassengerRailsなども同時にインストールされます。


Ubuntuな方は、debファイルが準備されているので、dpkgコマンドで容易にインストールが可能です。

私は、今回Fedoraで動作確認をしましたので、ソースコードからビルド(コンパイル)してインストールを行いました。


$ wget http://rubyforge.org/frs/download.php/57097/ruby-enterprise-1.8.6-20090520.tar.gz
$ tar zxvf ruby-enterprise-1.8.6-20090520.tar.gz

お約束ですが、まず、ダウンロード〜展開します。


$ sudo ./ruby-enterprise-1.8.6-20090520/installer

で、インストールコマンドの実行です。


Welcome to the Ruby Enterprise Edition installer
This installer will help you install Ruby Enterprise Edition 1.8.6-20090520.
Don't worry, none of your system files will be touched if you don't want them
to, so there is no risk that things will screw up.

You can expect this from the installation process:

  1. Ruby Enterprise Edition will be compiled and optimized for speed for this
     system.
  2. Ruby on Rails will be installed for Ruby Enterprise Edition.
  3. You will learn how to tell Phusion Passenger to use Ruby Enterprise
     Edition instead of regular Ruby.

Press Enter to continue, or Ctrl-C to abort.

インストーラが起動しました。Enterを押しましょう。


Checking for required software...

 * C compiler... found at /usr/bin/gcc
 * C++ compiler... found at /usr/bin/g++
 * Zlib development headers... found
 * OpenSSL development headers... found
 * GNU Readline development headers... not found

Some required software is not installed.
But don't worry, this installer will tell you how to install them.
Press Enter to continue, or Ctrl-C to abort.

私の環境では、関連するライブラリが足りないみたいです。"GNU Readline development headers"だけがnot foundです。

ということで、Enterを押しましょう。次に、足りないライブラリをどうやってインストールするべきかを教えてくれます。(便利!)


--------------------------------------------
Installation instructions for required software

 * To install GNU Readline development headers:
   Please run yum install readline-devel as root.

↑んな感じで「rootで"yum install readline-devel"を実行してちょ」と言われるので、


# yum install readline-devel

を実行した後に、


$ sudo ./ruby-enterprise-1.8.6-20090520/installer

と、再度Ruby Enterprise Editionのインストーラを実行すると、、、


Checking for required software...

 * C compiler... found at /usr/bin/gcc
 * C++ compiler... found at /usr/bin/g++
 * Zlib development headers... found
 * OpenSSL development headers... found
 * GNU Readline development headers... found
--------------------------------------------
Target directory

Where would you like to install Ruby Enterprise Edition to?
(All Ruby Enterprise Edition files will be put inside that directory.)

[/opt/ruby-enterprise-1.8.6-20090520] :

今度は、ライブラリチェックを通過し、インストール場所を聞かれます。

デフォルトでは、下部の"[]"で囲まれた部分にインストールされますので、デフォルトの場所でOKの場合は、何も入力せず、そのままEnterを押しましょう。

変更する場合は、そのパスを入力した後に、Enterを押します。


--------------------------------------------
Ruby Enterprise Edition is successfully installed!
If want to use Phusion Passenger (http://www.modrails.com) in combination
with Ruby Enterprise Edition, then you must reinstall Phusion Passenger against
Ruby Enterprise Edition, as follows:

  /opt/ruby-enterprise-1.8.6-20090520/bin/passenger-install-apache2-module

Make sure you don't forget to paste the Apache configuration directives that
the installer gives you.


If you ever want to uninstall Ruby Enterprise Edition, simply remove this
directory:

  /opt/ruby-enterprise-1.8.6-20090520

If you have any questions, feel free to visit our website:

  http://www.rubyenterpriseedition.com

Enjoy Ruby Enterprise Edition, a product of Phusion (www.phusion.nl) :-)

インストールが完了すると、↑な感じで"Ruby Enterprise Edition is successfully installed!"と表示されます。



PassengerをApacheに組み込み

この辺は、以前のエントリに細かく書いたので、そちらを参照してください。

もちろん、事前にApacheはインストールしておきましょう。

Apacheのインストール方法については、上記のエントリでも触れていますし、Google先生もたくさん導いてくれるかと。


/opt/ruby-enterprise-1.8.6-20090520/bin/passenger-install-apache2-module

インストールコマンドだけ紹介しておくと、上記のような感じです。

# "/opt/ruby-enterprise-1.8.6-20090520"に、REEをインストールした場合です。


実際に使用メモリ量が減少するか確認


比べたのは、Ruby Enterprise Edition(1.8.6ベース)と、素のRuby(1.8.6)の2つで、互いにPassengerで複数のRailsアプリを稼動させて確認しました。

確認に使用したアプリケーションは「SKIP」で、3つの異なるSKIPの環境を1サーバに構築した上で、同時に動かし、それぞれのケース(REE, Ruby)に同じだけの負荷量を与えてみた結果が以下です。


Passengerの設定値

一応、今回の実験で使ったPassengerの設定値を載せておきます。

PassengerHighPerformance on
PassengerMaxPoolSize 10
PassengerMaxInstancesPerApp 1
PassengerPoolIdleTime 300
PassengerMaxRequests 0

RailsEnv production

こんな感じ。

Passengerの設定の詳細については、今度別エントリで記そうかと思います。


Ruby(1.8.6) + Passenger(2.2.2)を使用した場合

Passengerには、"passenger-memory-stats"という、現在Passengerが使用しているメモリの状況を確認できるナイスなコマンドが添付されています。

このコマンドで、一定の負荷量をかけた3つのSKIPのメモリ使用量を確認してみます。

まずは、素のRuby(1.8.6)では、以下のような結果となりました。

--------- Passenger processes ---------
PID    Threads  VMSize   Private  Name
---------------------------------------
27100  18       10.5 MB  0.6 MB   /usr/lib/ruby/gems/1.8/gems/passenger-2.2.2/ext/apache2/ApplicationPoolServerExecutable 0 /usr/lib/ruby/gems/1.8/gems/passenger-2.2.2/bin/passenger-spawn-server  /usr/bin/ruby  /tmp/passenger.27092
27101  2        18.0 MB  4.7 MB   Passenger spawn server
27136  1        46.5 MB  29.0 MB  Passenger ApplicationSpawner: /var/www/passenger/../skip02
27150  1        66.7 MB  47.5 MB  Rails: /var/www/passenger/../skip02
27152  1        66.6 MB  47.5 MB  Rails: /var/www/passenger/../skip02
27153  1        46.5 MB  29.0 MB  Passenger ApplicationSpawner: /var/www/passenger/../skip01
27168  1        65.0 MB  45.9 MB  Rails: /var/www/passenger/../skip01
27169  1        46.5 MB  28.9 MB  Passenger ApplicationSpawner: /var/www/passenger/../skip03
27179  1        64.4 MB  45.2 MB  Rails: /var/www/passenger/../skip03
27181  1        65.0 MB  45.8 MB  Rails: /var/www/passenger/../skip01
27183  1        66.7 MB  47.6 MB  Rails: /var/www/passenger/../skip01
27185  1        66.8 MB  47.7 MB  Rails: /var/www/passenger/../skip01
27187  1        66.8 MB  47.7 MB  Rails: /var/www/passenger/../skip01
### Processes: 13
### Total private dirty RSS: 467.23 MB

実際に使用している物理メモリ量は"467.23MB"です。


Ruby Enterprise Edition(1.8.6-20090520) + Passenger(2.2.2) を使用した場合

それに対して、Ruby Enterprise Edition(1.8.6ベース)を使用した場合の結果は、、、

--------- Passenger processes ---------
PID    Threads  VMSize   Private  Name
---------------------------------------
28041  18       10.5 MB  0.6 MB   /opt/ruby-enterprise-1.8.6-20090520/lib/ruby/gems/1.8/gems/passenger-2.2.2/ext/apache2/ApplicationPoolServerExecutable 0 /opt/ruby-enterprise-1.8.6-20090520/lib/ruby/gems/1.8/gems/passenger-2.2.2/bin/passenger-spawn-server  /opt/ruby-enterprise-1.8.6-20090520/bin/ruby  /tmp/passenger.28032
28042  1        15.6 MB  5.3 MB   Passenger spawn server
28066  1        48.0 MB  24.9 MB  Passenger ApplicationSpawner: /var/www/passenger/../skip01
28083  1        51.2 MB  28.4 MB  Rails: /var/www/passenger/../skip01
28085  1        51.2 MB  28.3 MB  Rails: /var/www/passenger/../skip01
28096  1        48.0 MB  6.8 MB   Passenger ApplicationSpawner: /var/www/passenger/../skip02
28114  1        51.2 MB  25.3 MB  Rails: /var/www/passenger/../skip02
28116  1        48.1 MB  6.8 MB   Rails: /var/www/passenger/../skip02
28119  1        51.2 MB  28.2 MB  Rails: /var/www/passenger/../skip01
28125  1        52.2 MB  28.9 MB  Rails: /var/www/passenger/../skip01
28128  1        51.2 MB  27.1 MB  Rails: /var/www/passenger/../skip02
28152  1        48.0 MB  25.0 MB  Passenger ApplicationSpawner: /var/www/passenger/../skip03
28164  1        51.2 MB  28.5 MB  Rails: /var/www/passenger/../skip03
### Processes: 13
### Total private dirty RSS: 264.22 MB

Ruby Enterprise Editionだと、実際に使用している物理メモリ量は"264.22MB"と激減しました!

今回は厳密に計測していないので、今回の結果の値からは、多少上下するとは思いますが、今回の前提で計測した場合、メモリは、約43.5%ほど削減されたことになります。

すげぇな、Ruby Enterprise Edition。


もちろん、稼動させるアプリケーションや、Passengerの設定にも左右されるとは思いますが、使用メモリ量の削減には大きく貢献してくれそうなので、試してみる価値はありそうですよ!

時間があれば、今度はパフォーマンスの違いを計測してみたいと思います。


参考


2009/06/07

SourceRepo

{Redmine, Trac} + {Git, Mercurial, Subversion}のホスティングサービス「SourceRepo」


なかなか良さそうなバージョン管理ツール課題管理ツールホスティングサービスをたまたま見つけた。


Secure, Simple, Affordable Source Hosting - SourceRepo - Git Hosting, Subversion Hosting, Mercurial Hosting


有償だけど、

  • Git, Mercurial, Subversion
  • Redmine, Trac

など、諸々使える。


あと、有償だけに暗号化通信に対応していたり、ブラウザから簡単に触れるコントロールパネルが付いていたり、利用者数制限は無かったり、と、有償なんだけど、そこそこ安価で、そんなに悪くないように思います。

以降、簡単に紹介まで。


プラン

Level1〜3まで、3つのプランがあるようです。価格帯は、$3.95〜$12.95/monthといったところ。

f:id:rx7:20090606181107p:image:w480

Level1では、バージョン管理ツールも課題管理ツールも1プロジェクトずつしか使えないけど、Level2以降は、それらも無制限に使えます。基本的には使用ディスク量の制限となるみたいですね。

支払いは、Google CheckoutとかPaypal、各種クレジットカードで(VISA, Master cardなど)。


その他機能・仕様

  • 使いやすいコントロールパネル
  • 利用者数制限無し
  • TracやRedmineのプロジェクトを自動でセットアップ
  • 暗号化通信OK
    • TracやSubversionへのHTTPSアクセス、GitやMercurialへのSSHアクセス
  • 1時間おきにバックアップ
  • 年中無休(24d,365h)のサポート
  • 移行支援もしてくれる
  • 30日の返金保証
  • フックスクリプトの統合
  • バージョンアップも自動でしてくれる

参考

そういえば、昔に無料で使えるSubversionのホスティングサービスを調べたな・・・。


入門Redmine Linux/Windows対応

入門Redmine Linux/Windows対応

2009/06/05

「`」は何と読むのか


そういえば知らなかったので調べてみた。

`」は、「アクサングラーブ」と読むらしい。


他にも、

  • 逆クォート
  • バッククォート

という使われ方を見かけた。


参考


読めそうで読めない間違いやすい漢字

読めそうで読めない間違いやすい漢字

  • 作者: 出口宗和
  • 出版社/メーカー: 二見書房
  • 発売日: 2008/01/23
  • メディア: 単行本(ソフトカバー)

世界一受けたい授業使える知識!BEST100

世界一受けたい授業使える知識!BEST100

2009/06/04

CodeZineにてAmazon EC2/S3の連載第7回目『Amazon CloudFrontを活用して高速なコンテンツ配信を実現しよう』が公開中


CodeZineにて連載中の「流行りのクラウドサービスを操ってみよう!Amazon EC2/S3環境構築のすべて連載一覧:CodeZine(コードジン)」の第7回目が本日公開されました。



今回は、Amazon Web Servicesが展開するCDN(Contents Delivery Network)サービス「Amazon CloudFront」を使った、高速ネットワークによるコンテンツ配信の実現方法を紹介しています。

Amazon CloudFrontは、初期費用不要の完全従量課金制のCDNサービスで非常に手軽で安価な金額からスタートすることができます。このサービスを利用することで、ユーザーにとっても非常に快適で、かつ効率的なコンテンツ配信の仕組みを作ることができます。


このように、手軽で、かつすぐに使い始められるという要素は、短期で訪れるビジネスチャンスを逃さないためにも重要なファクターと言えます。

高価なため、なかなかCDNサービスを使えなかったベンチャー企業でも、サービスのスタートアップとして、まずはこの「Amazon CloudFront」を使ってコンテンツ配信を行うといった選択肢は、十分ありうると思いますので、気になる方、興味のある方は、是非ご覧ください。


参考

2009/06/03

アラゴスタ・サスペンション

アラゴスタサスペンションその後


アラゴスタ サスペンション + AutoExe スタビライザー取り付け」にも書いたとおり、先日、愛車FDのアシ(車高調)をアラゴスタ製のものに変更したわけですが、あれから500kmほど走行したところ、サスも慣らされてきたのか、乗り手が驚くくらい、購入時と比べさらにしなやかに動くようになってきました。

そして、物凄く乗り心地も良い。多少のガタガタ路面でもしっかり吸収、でもってコーナーでのロールも少なく、本当に素晴らしいの一言に尽きます。流石、世界のアラゴスタ。


多少高い買い物でしたが、サスペンションを変えるだけで、こうも変わるのですね。

さらに、500km、1000kmと走ると、また印象が変わるのかもしれません。そのときは、またインプレを書きたいと思います。



オススメ (一部は、最近読んでいる本とも言う)
Chef実践入門 ~コードによるインフラ構成の自動化 (WEB+DB PRESS plus) クラウド Amazon EC2/S3のすべて~実践者から学ぶ設計/構築/運用ノウハウ~ [Web開発者のための]大規模サービス技術入門 ―データ構造、メモリ、OS、DB、サーバ/インフラ (WEB+DB PRESS plusシリーズ) エキスパートのためのMySQL[運用+管理]トラブルシューティングガイド [24時間365日] サーバ/インフラを支える技術 ~スケーラビリティ、ハイパフォーマンス、省力運用 Linux-DB システム構築/運用入門 (DB Magazine SELECTION) キャパシティプランニング ― リソースを最大限に活かすサイト分析・予測・配置 スケーラブルWebサイト 実践ハイパフォーマンスMySQL 第3版 ウェブオペレーション ―サイト運用管理の実践テクニック (THEORY/IN/PRACTICE) SQLアンチパターン インターネットのカタチ―もろさが織り成す粘り強い世界― ハイパフォーマンス ブラウザネットワーキング ―ネットワークアプリケーションのためのパフォーマンス最適化 Linuxの教科書―ホントに読んでほしいroot入門講座 (IDGムックシリーズ)