日曜日 12 07, 2008

glassfish gem v.0.9.1 release

glassfish gem の最新版v.0.9.1がリリースされました。


今回の最大の目玉は、


Rails2.2を完全サポート、スレッド・セーフ/ノン・スレッド・セーフ設定両方に対応 



もちろんバグフィックスも含まれていますので、お使いの方は、


gem update glassfish



でアップデートを!

金曜日 10 24, 2008

Glassfish problem with Netbeans 6.5 RC1 on mac

Netbeans6.5RC1がリリースされましたが、RC1にバンドルされているGlassfish v.3prelude b28にはバグがあるようです。

Mac版だけなのですが、このb28ではupdatetoolをインストールしようとすると、



⁞/Applications/NetBeans/glassfish-v3-prelude-b28/bin%  ./updatetool 

The software needed for this command (updatetool) is not installed.

If you choose to install Update Tool, your system will be automatically
configured to periodically check for software updates. If you would like
to configure the tool to not check for updates, you can override the
default behavior via the tool's Preferences facility.

When this tool interacts with package repositories, some system information
such as your system's IP address and operating system type and version
is sent to the repository server. For more information please see:

http://wiki.updatecenter.java.net/Wiki.jsp?page=UsageMetricsUC2

Once installation is complete you may re-run this command.

Would you like to install Update Tool now (y/n): y

Software repository: http://mercurial1.foundry.sun.com/glassfish/v3prelude/dev/mac/
Software repository: http://pkg.glassfish.org/v3prelude/contrib/mac/
Software repository: http://mercurial1.foundry.sun.com/glassfish/v3prelude/contrib/mac/
Software repository: http://pkg.glassfish.org/v3prelude/dev/mac/
Software repository: http://pkg.glassfish.org/v3prelude/release/mac/
IOException: Connection failed: 503: Service Temporarily Unavailable

Could not download application packages. This could be because
you are using a proxy server to access the internet.


というように表示されてしまい、アップデートすることができません。
このバグは最新のb28cでfixされておりますので、Macでお使いになる場合は、こちらからb28cをダウンロードして、お使いください。

水曜日 6 04, 2008

gettext with rails2.1

Rails2.1でgettext(1.91.0)をつかったところ、以下のようなエラーに


NoMethodError (undefined method `file_exists?' for #):
.
.
.


こちらにその対処方法がありました。

それはconfig/initializers/にgettext.rbというファイルを作って、以下のように記述。


require 'gettext/rails'

module ActionView
class Base
delegate :file_exists?, :to => :finder unless respond_to?(:file_exists?)
end
end




これで2.1でも問題なくgettextを使うことができました。

月曜日 5 19, 2008

Project Fuji

JavaOne2008で発表されたOpenESBv.3.の中核となるProject Fuji
詳しくは岡崎さんのブログスクリーンキャストを見ていただいたほうがいいかもしれません。

やはり気になるのは、フィルターをJRubyで書くことができるというところでしょう。
JRubyというとどうしてもパフォーマンス面が表にでることが多いですが、こういった新たな一面が登場するのはいいかもしれません。



月曜日 5 12, 2008

Glassfish gem v.0.2.0

約2週間GWでお休みしていましたが、再開します。
この2週間で、JavaOne2008が開催され、JRuby関連でも注目の話題がいくつか登場しました。
これから数日はJavaOne2008の新しい話題について取り上げたいと思います。

まず今日は

GlassFish Gem v.0.2.0リリース

コードベースがJavaOneで発表されたGlassFish v.3. TP2にアップグレード。
旧バージョンをお使いの場合は、

gem uninstall glassfish


でアンインストール後

gem install glassfish



でインストールし直してください。


木曜日 3 27, 2008

Glassfish+MySQL

弊社がMySQLを買収しておそらく初めての成果物。

Glassfish v.2. &MySQL

が公開。
Glassfish v.2.U1とMySQL Community サーバー5.0.51a、そしてMySQL用JDBCドライバ5.1.6をバンドルして提供しています。

アップデートセンターを利用すれば、JRuby On RailsのアプリケーションをWar化して、デプロイすることが可能なプラグインをGlassfishにインストール可能です。
そのあたりの詳細は後日記載予定。

水曜日 2 27, 2008

nginx : config

nginxその2です。
nginxの特徴として言い忘れていたことが2つ。

1つはSolaris10上で使う際に、eventportをサポートしています。


events {
worker_connections 1024;
use eventport;
}
というようにnginx.confのeventsディレクティブに設定してあげれば、有効になります。
おそらくstaticなウェブサーバーでイベントポートをサポートしている唯一のものかもしれません。

2つ目は、

configure 時に

--with-cpu-opt


というオプションを付けることによって、CPUごとにオプティマイズしてくれます。指定できるCPUは、現在(ver.0.6.25)でpentium, pentiumpro, pentium3, pentium4, athlon, opeteron, sparc32, sparc64, ppc64の9種類です。


nginx.confの設定ですが、rubygemで書かれたgeneratorがリリースされていて、それを元に編集するのが、可読性が一番高く、一番分かりやすいと思われます。(もちろんconfファイル自体、簡単な設定なので、wikiを見ながら編集してもそんなに変わらないかもしれませんが。。)


まずgeneratorをインストールします。JRubyでもRubyでも動作します。

gem install nginx_config_generator

インストールすると、generate_nginx_configというコマンドがインストールされるので、まずはyml形式のひな形を生成します。


generate_nginx_config --example > config.yml

そうするとymlのひな形ができますので、これを適宜編集したのち、nginx.confに変換します。


generate_nginx_config config.yml nginx.conf


このnginx.confを$NGINX_HOME/conf以下に配置すれば、設定完了です。


金曜日 2 15, 2008

GlassFish v3 Gem - 0.1.1 available


現在開発が進むGlassFish v3から、JRuby用のgemの新しいバージョン0.1.1がリリースされました。
GlassFish gemはRailsアプリケーションをJava アプリケーションサーバーGlassFish上にコマンド一つで、起動・デプロイできるというものです。

このバージョンの改良点は以下の通り。


1. gemの名前がGlassFishからglassfishに変更

2. 0.1.0ではアプリケーションが/<application_name>にデプロイされていたのが、WEBrickやthin, mongrelと同様に、/にデプロイされるように

3. HTTPポートがこれまでの8080から3000に変更、またSSLも8181から3131、管理ポートも4848から3838に変更

4. 複数のRailsアプリケーションインスタンスを起動したい場合、これまでは-J-Djruby.runtimeで指定していたものを

glassfish_rails <application_name> -n <instance_number>

で指定可能に


インストール方法と使い方ですが、まず前提としてJRuby版のgemにパスが通っているものとします。


インストール方法

1.v.0.1.0がインストールされている場合はアンインストールします。


$ sudo gem uninstall GlassFish

2.v.0.1.1をインストールします


$ sudo gem install glassfish


これでインストールされ、JRubyのバイナリと同じディレクトリに、glassfish_railsというコマンドが作られているはずです。またGlassFish本体は
$JRUBY_HOME/lib/ruby/gems/1.8/gems/glassfish-0.1.1-universal-java
にあります。

使い方

WEBrickやthin, mongrelはアプリケーションルートディレクトリーの中で、起動させますが、GlassFishはアプリケーションルートディレクトリーの一つ上のディレクトリで起動させます。
また引数としてアプリケーション名を与える必要があります。

つまり、ルートディレクトリが/Sample/test_appの時、thinの場合


$ cd /Sample/test_app
$ thin start

となりますが、

GlassFishの場合


$ cd /Sample
$ glassfish_rails test_app

となります。このとき複数インスタンス起動させたい場合は、

glassfish_rails test_app -n 2

というように行います。

v.0.1.0はかなり不安定で、パフォーマンス的にも今ひとつでしたが、今回は非常に安定しているように思われ、パフォーマンスの改善もみられます。ただ現在Railsで最速といわれるnginx+thinの組み合わせと比べた場合、どの程度のパフォーマンスかはわかりませんが。。。

また次のバージョン、v.0.1.2では以下のような拡張が計画されているようです。


1. RAILS_ENV環境変数のサポート。(v.0.1.1ではサポートされていません)
2. コマンド引数でポートの変更を可能に
3. 近頃話題の軽量フレームワークMerbのサポート。

今後の展開が非常に楽しみです。
次回はGlassFish gem v.0.1.1を使って、話題のRSSリーダFastladderをJRuby on Railsで動かしてみたいと思います。

About

Tomo

Search

Archives
« 4月 2014
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
今日