nekop's blog

OpenShift / JBoss / WildFly / Infinispanの中の人 http://twitter.com/nekop

2011-01-01から1年間の記事一覧

JBossがおかしい!あなたならどうしますか?

Java Advent Calendar 2011とJBoss Advent Calendar 2011の28日目のエントリです。タイトルはMySQLがおかしい!あなたならどうしますか? – MySQL Casual Advent Calendar 2011のパクリです。素晴らしいエントリですね。このエントリでは対象をJBossとJava V…

Nettyでab書いてみた

JBoss Advent Calendar 2011の27日目のエントリです。Nettyは非同期ネットワークアプリケーションフレームワークです。現在、NettyはJBossプロジェクトから移動中であり、JBoss NettyではなくNettyプロジェクトとして http://netty.io/ というサイトで独立す…

Bytemanクイックリファレンス

JBoss Advent Calendar 2011の26日目のエントリです。Bytemanの組み込み変数とかすぐ忘れてしまってBytemanのリファレンスPDFドキュメントを開くハメになることが多いので主要な部分を抜き出してみました。 基本構造 RULE CLASS METHOD HELPER AT BIND IF DO…

JBoss Advent Calendar 2011(全部俺)の感想

JBoss Advent Calendar 2011の25日目のエントリです。まとめ。自分は仕事以外ではナレッジを溜め込む一方であまり吐き出さないクセがあるので、Advent Calendarはいい機会だと思ってやってみました。やはりある程度の労力は必要なものの、頭の中の知識が整理…

RadargunでInfinispanのベンチマーク

JBoss Advent Calendar 2011の24日目のエントリです。Radargunはキャッシュやデータグリッドのベンチマークツールです。Infispanのベンチマークをする目的で作られたものですが、最近はあまりRadargunのほうがアップデートされていないので、アップデートす…

Torquebox 2.0.0.Beta1を試す

JBoss Advent Calendar 2011の23日目のエントリです。Ruby Advent Calendar jp: 2011 の19日目の記事でも紹介されていました。ありがとうございます。Torquebox 2はJBoss AS7をベースとしたJRubyアプリケーションサーバです。他にもJBoss AS7をベースとしたC…

JBoss AS 7.1.0.CR1 "Flux Capacitor" リリース

JBoss Advent Calendar 2011の22日目のエントリは号外ニュース的なエントリです。JBoss AS 7ですが、Java EE 6フルプロファイルの実装が一通り完了したのでCR1リリースとなりました。ぱちぱち。以下のURLからダウンロードできます。http://www.jboss.org/jbo…

Ceylon 0.1

JBoss Advent Calendar 2011の21日目のエントリです。Ceylonがリリースされたので遊んでみます。Ceylonは"Say more, more clearly"を標語とするJava VM上で動作する静的型の言語です。動的スクリプト言語ではありません。Java VM上で動作する静的型の言語、…

JBoss Forge 1.0.0.Beta4を試す

JBoss Advent Calendar 2011の20日目のエントリです。JBoss Forge 1.0.0.Beta4がリリースされたので試してみます。JBoss Forgeは超速Java EEアプリケーション開発を実現するためのツールです。元々Seam Forgeという名前でSeamのサブプロジェクトとして開発さ…

Arquillianを使った本物のJava EEテスト その3

JBoss Advent Calendar 2011の19日目のエントリです。Arquillianを用いたテストではRemote, Managed, Embeddedという3種類のコンテナの使い方をサポートしています。それぞれ以下のようにテストを行います。 Remote 既に起動されているコンテナに対してテス…

Arquillianを使った本物のJava EEテスト その2

JBoss Advent Calendar 2011の18日目のエントリです。昨日例に挙げたテストコードを一通り見ていきましょう。今回はJUnitを使っていますが、TestNGも使えます。 @RunWith(Arquillian.class) public class MailBeanTest { @Inject MailBean mailBean; @Deploy…

Arquillianを使った本物のJava EEテスト

JBoss Advent Calendar 2011の17日目のエントリです。JBoss AS 7でJavaMailを利用してメールを送るでCDIのBeanを作りましたが、それをテストするためにわざわざJSF2の画面を作りました。今回は画面を作るのではなく、Arquillianを使って自動テスト化します。…

JBoss AS 7で外部からの接続を受け付ける

JBoss Advent Calendar 2011の16日目のエントリです。今日は小ネタ。JBoss ASは、不用意にアプリケーションサーバを外部公開しないようデフォルトではローカルアドレス(127.0.0.1)にサーバソケットをバインドします。つまり、別のPCなどから http://:8080/ …

JBoss AS 7のJava VMチューニング

JBoss Advent Calendar 2011の15日目のエントリです。JBoss AS7 はじめの一歩で少し書いたんですが、だいぶ古くなっているのと少々解説を。今回はJBoss AS 7.1.0.Beta1とFedora 16のOpenJDK 6 64bitを利用します。 $ java -version java version "1.6.0_22" …

JDBC XAデータソース

JBoss Advent Calendar 2011の14日目のエントリです。今日はJDBC XAデータソースの説明。 XAってなによ? ツーフェーズコミット(2相コミット, 2PC)するためのインタフェースです。 XAとか2PCってどんなときに使うの? 一つのトランザクションで2つ以上のトラ…

MDBとJCAのおはなし

JBoss Advent Calendar 2011の13日目のエントリです。MDBはメッセージドリブンビーンの略であり、メッセージを処理するEJBコンポーネントです。MDBはJMSのメッセージを処理するコンポーネント、という古い認識の人もたまに居るのですが、MDBはかなり前からJM…

JNDIをさらっと振り返る

JBoss Advent Calendar 2011の12日目のエントリです。JNDIはJava EEサーバのEJB、JDBCデータソースやJMSのConnectionFactoryなど、各種サービスにアクセスするためのエントリポイントとなる部分なのですが、あまりエキサイティングな技術ではないので注目さ…

JBoss ASのデータソースフェイルオーバ

JBoss Advent Calendar 2011の11日目のエントリです。もしデータ複製(レプリケーション)しているデータベースサーバが2台以上あり、利用している1台にアクセスできなくなったら2台目にアクセスするようにしたい、というフェイルオーバ要件がある場合、JBoss…

JBoss ASでコネクションクローズ漏れ検知

JBoss Advent Calendar 2011の10日目のエントリです。JBoss ASのデータソースその他のパラメータでStatementやResultSetのクローズ漏れをクローズするという機能を紹介しましたが、Connectionもクローズ漏れを検知してクローズする機能があります。JDBCのCon…

mod_cluster概要

JBoss Advent Calendar 2011の9日目のエントリです。Apache HTTPDとJBoss ASを連携するのには通常mod_jkかmod_proxy_ajpを使うのですが、mod_clusterというのもあります。今回はこのmod_clusterの概要を紹介しようと思います。まずmod_jkとmod_proxy_ajpのお…

JBoss AS 7でJavaMailを利用してメールを送る

JBoss Advent Calendar 2011の8日目のエントリです。コメントでJBoss AS 7でJavaMailを利用してメールを送る方法が知りたいというリクエストをもらったので20分で簡単なアプリを書きました。そのうち10分近くはURLにsessionをsessoinとtypoしててハマってい…

JBoss ASのデータソースその他のパラメータ

JBoss Advent Calendar 2011の7日目のエントリです。まだ1/3も終わってないんですね。データソースの基本、コネクションプール、障害検知に入らなかった雑多なパラメータを紹介していきます。 <query-timeout> より優秀な<set-tx-query-timeout>があるので基本的に使わないのですが、JDBCのクエリ</set-tx-query-timeout></query-timeout>…

JBoss ASのデータソース障害検知

JBoss Advent Calendar 2011の6日目のエントリです。昨日に引き続きJDBCデータソースのコネクションプールや障害検知まわりを書こうと思います。まずはおさらい。障害検知を有効化するには<valid-connection-checker-class-name>または<check-valid-connection-sql>のどちらかを定義します。<exception-sorter-class-name>はオマケですが定義したほうが良いで</exception-sorter-class-name></check-valid-connection-sql></valid-connection-checker-class-name>…

JBoss ASのデータソース設定

JBoss Advent Calendar 2011の5日目のエントリです。今日はデータソースについて解説します。一応ターゲットとするバージョンはJBoss AS 5, 6系ということにします。JBoss AS 7では記述フォーマットは異なりますが各設定要素は大体一緒なのでAS7でも応用が効…

Seam 2.3

JBoss Advent Calendar 2011の4日目のエントリです。今日は軽めで。2日目にSeam 3とApache DeltaSpikeについて書きましたが、Seam 2について書いていなかったので今日はそれを書こうと思います。Seam 3の開発に力を入れている一方、Seam 2の開発も終了するわ…

最新JBoss情報を効率良く追いかけるための情報ソース

JBoss Advent Calendar 2011の3日目のエントリです。今回は最新JBoss情報を効率良く追いかけるための情報ソースを紹介します。今年の6月からやっているのですが、JBoss Weekly Editorialという週刊で発行されるJBoss関連の情報をまとめたブログエントリのシ…

Seam 3.1とSeam.Nextのアナウンス

JBoss Advent Calendar 2011の2日目のエントリです。12/1にSeam 3.1.0.CR1がリリースされ、Seam 3.1の機能セットがfeature completeの状態になりました。これ以上の機能追加は3.2など別のバージョンに取り込まれていくことになります。また、先月の終わりにS…

JBoss AS 7.1.0.Beta1のデフォルトセキュリティ

JBoss Advent Calendar 2011の1日目のエントリです。古いJBoss ASの脆弱性が世間を賑わせていますが、影響を受けるのは2年半前のリリースJBoss AS 5.1.0.GAかそれ以前のリリースです。6系以降の新しいリリースは全ては影響を受けないので、きちんとアップデ…

GCログが無かったときに通常のログからGCを類推する

「昨日JBossの応答が非常に悪くなったので再起動しました、GCログは取ってませんでした、原因調査お願いします」というような相談を受けたとき、まあ大体GCが犯人なんだけど、GCログないのでGCログ有効化して再現待ちましょうね、というのが普通の着地点。で…

GCログを上書きしないためのTips

オプションで指定するファイル名に日時を入れましょう。この方法は標準出力のリダイレクトなんかにも応用できる。 -Xloggc:/path/to/gc.log.`date +%Y%m%d%H%M%S`意外に知られていないというかちゃんと保存しないで上書きしてて残念なことになっているケース…