Archive for 6月, 2010
VMware Server Linux版の管理コンソールが頻繁にクラッシュする場合の対処方法 その2
その1で、改善しない人も多いようですので、その他の対処方法を見つけたので記載しておきます。
まず、この対処方法で改善するのは以下の環境の方です。
まず、以下のコマンドを実行して下さい。
$ rpm -qa|grep -e "^glibc-*" -e "nscd"
glibcのバージョンが2.5-42の場合は、この記事の方法で劇的に改善する可能性があります。というのも、glibc-2.5-42とnscd-2.5-42の相性が悪いらしく、VMwareの管理コンソールが頻繁にクラッシュし、最悪、仮想マシンが落ちてしまうようです。
GWTのコンパイルを高速化する方法

Google I/Oのセッションの一つで、Faster apps faster: Optimizing apps with the GWT Compilerというセッションがあり、そこで公開されていたテクニックです。ここで紹介されたテクニックは、リリース用のバイナリ出力を高速化するテクニックではなく、テスト用のバイナリ出力を高速化するテクニックですので、リリース用のコンパイルは従来通り気長に待ちましょう。
まず、コンパイルオプションに以下の2つを付けます。最初のオプションは、メタデータの出力を抑制し、2つめのオプションはいくつかの最適化をキャンセルする事でコンパイル速度を上げます。
- -XdisableClassMetadata
- -draftCompile
次に、モジュール作成時に自動生成されるXxxxxx.gwt.xmlの<module>タグ内に以下の記述を追加します。この記述は、safariブラウザのみを利用することを指示します。
- <set-property name=”user.agent” value=”safari” />
続いて、以下の記述を追加し、safari用に最適化されたDOMコントロールのみを利用するように指示します。
<replace-with class="com.google.gwt.user.client.impl.DOMImplSafari"> <when-type-is class="com.google.gwt.user.client.impl.DOMImpl" /> <when-property-is name="user.agent" value="safari" /> </replace-with>
これでテストするブラウザが決まっている場合は、実行するJavaScriptはそこそこ速く、なおかつコンパイル速度を上げる事ができます。user.agentにはie6, ie8, gecko, gecko1_8, safari, operaが指定できるようです。
最後に、Internationalization(I18N)を利用している場合には、以下の記述を追加する事で、テスト対象の言語以外は利用しない事を明記する事ができます。
- <extend-property name=”locale” values=”ja_JP” />
これで、私の環境では従来3分かかっていたコンパイル速度が1分になりました。

