InfoQ

News

ActiveMQ 5.1、JMS宛先モニタリングとMSMQ Bridgeをサポート

作者 Srini Penchikala, 翻訳者 編集部 投稿日 2008年6月6日 午後6時2分

コミュニティ
Java
トピック
メッセージング,
オープンソース
タグ
ActiveMQ,
JMS

企業メッセージングサービスのオープンソースプロバイダであるApache ActiveMQ(サイト・英語)は最近バージョン5.1(source)がリリースされたが、当バージョンではこのメッセージブローカー製品の安定性とパフォーマンスが改善されている。また、プライオリティメッセージの順位付けがサポートされ、新しいmsmq(source)トランスポートコンポーネントを使ったMicrosoft Message Queue(MSMQ)(source)からActiveMQへのブリッジもサポートされている。

ActiveMQコンテナのモニタリング(source)モジュールも改良された。新規のDestinationSourceクラスが追加され、利用可能なQueue(source)やTopic(source)へのアクセス、あるいはコンテナにおけるQueue/Topicの作成もしくは削除のリスンができるようになった。エンドユーザーが利用可能な宛先を閲覧したり、その宛先をクエリしてアクティブキューの総数、キューデプス、メッセージ数などのJMSスタティスティクスを求めたりする際に役立つ新しいAPI(source)を備えている。

最新バージョンのその他の新機能は以下のとおり。

  • JMS Sessionやコンシューマーを必要することなく、メッセージをポールする新しいAPI 
  • 新しいsendTimeoutプロパティを追加することにより、MessageProducer(source)クラス内でのタイムアウトをよりグレースフルに処理 
  • Failoverトランスポートに接続済みのバックアップチャンネルへのオプションを追加。プライマリトランスポートが失敗すると、バックアップチャンネルが動的に追加される。
  • ActiveMQコンフィギュレーションをXSDで確認できるようになったが、これはSpring(サイト・英語)のコンフィギュレーションファイルに埋め込み可能になったことを意味する。

管理コンソールJARファイル(activemq - console.jar)をOSGi(サイト・英語)バンドルとしてデプロイできるようになったので、Apache ServiceMix(サイト・英語)オープンソースのESBコンテナで再利用できる。ActiveMQの新バージョンはバグ(source)にも対処しており、その中には高ロード状況で発生していたバグ、メモリリークやパフォーマンス問題に関連したバグも含まれる。

昨年12月にリリースされたActiveMQバージョン5.0には、以下の重要な新機能がある。

  • AMQ Message Store は、高速、かつ高信頼のパーシステンスに使用できる、トランザクション・メッセージの埋め込み可能なストレージである。
  • Message Cursors は新しいメモリモデルの一部分であり、スペースが利用可能な場合、ストレージからメッセージを呼び出せるようにする(永続的なメッセージにはStore cursorsを使用)。この機能は、ActiveMQの前バージョンで非永続的メッセージング使用時にRAMバッファが足りなくなるという問題が頻発したため、それに対処するために追加になった。
  • Blob Messages: クライアントとActiveMQサーバーの間で送信されたJMSメッセージ内のBinary Large OBject(BLOB)を処理するための新しいBlobMessage(source) APIが用意されている。 
  • Mirrored Queues: キューのミラーリング(source)機能は、ActiveMQコンテナ内の指定されたキュー上にある生産者と消費者の間に流れるメッセージのモニタリングを容易にするために追加された。ミラーされたキューは、メッセージブローカー内部にある全てのキュー上のゼロコンフィギュレーションWire Tapの役割を果たす。Mirrored Queuesがオンになっていると、Queueに送られたすべてのメッセージは、類似名称のトピックにも送られるようになる。そのため、あるキューに関するメッセージ交換を監視したい開発者とWeb管理者は、ミラーされたキューのトピックから見ることができる。
  • Producer Flow Control: 開発者は、全接続を一時停止する必要なく、共有JMS接続上の各生産者を個々にフローコントロール(source)できる。

ActiveMQはJava Message Service(JMS)バージョン1.1(サイト・英語)の仕様に基づいている。Springフレームワークとも一体化するので、Springを用いることでActiveMQコンテナを埋め込みブローカー(source)として使用できる。ActiveMQのWebサイトには、バージョン5の使用法に関するさらに詳しい資料(source)や、企業アプリケーションでのActiveMQの使用例(source)が用意されている。

ActiveMQのサブプロジェクトであるApache Camel(サイト・英語)は、ActiveMQのコンテナ上で動作しているプロセス向けの仲介活動とルーティング活動を管理するために使われる。Springをベースにした統合フレームワークであるCamelがEnterprise Integration Patterns(source)を実装することにより、開発者は、Javaベースのドメイン固有言語(source)(もしくは流れるようなAPI)や、Scala DSL(サイト・英語)、XMLコンフィギュレーション・ファイルのいずれかで、ルーティングおよび仲介規則を設定できるようになる。

原文はこちらです:http://www.infoq.com/news/2008/05/activemq-5.1-release

ブックマーク
digg+,
reddit+,
del.icio.us+,
dzone+,
Hatena

No comments

返信

特集コンテンツ一覧

Typemock: その過去・現在・未来

Eli Lopian氏率いるTypemock社の過去・現在・未来について、インタビュー形式にて記します。

企業とSaaSの仮想化がもたらすのは、迅速性(アップ)だけではない

この論文では、仮想化やクラウドサービスの複雑なメリットと実世界における応用を検討します。さらに重要なこととして、Contegixが複雑な問題の解決に仮想化を実装している方法や、仮想化を使うべきではないケースについて詳細を提供します。

RubyのFiberを非同期I/Oに使うNeverBlockとRevactor

Fiberはユーザに試練を課すことなくこの考えを実装する有益な並行性ツールとして、ライブラリが2つあります。まさにこのためのソリューションとしてあるのがNeverBlockライブラリです。私たちはNeverBlockプロジェクトのMohammad A. Ali氏とRevactorライブラリのTony Arcier氏に話を聞きました。

拡張性に関する悪習慣

システムの保守容易性や拡張性を確保するためのベスト・プラクティスに関する記事は数多くありますが、この記事では避けた方がいい、いくつかの悪習慣(ワースト・プラクティス)を強調します。

トップスポーツチームの監督に教わる秘訣

この論文では、氏が発見した原則を要約し、その原則をいかにしてソフトウェア開発に応用するかを説明します。

事例研究:Dutch Railwaysのプロジェクトにおける分散拠点でのスクラム・プロジェクト

この記事では、私達がどのようにして大規模(240人月、10万行強)でインドとオランダの開発者も参加したスクラム・プロジェクトを成功させたのかを示しています。

Agile2008チーム参加レポート - 帰国そして変化

Agileカンファレンスに「参加者としてだけでなく、発表者として参加しよう」を掲げたチームgoyattomは、サブミッションを提出し、7つのセッションが日本から選択されました。参加者はカンファレンスで各々の発表や、各セッションへの参加、諸外国のエンジニアとの出会い、ステージ上で DearXPを熱演などの様々な思い出を抱えて、無事日本に戻ってきました。

SilverlightとJavaのインターオペラビリティ

マイクロソフトのRobert Bellが、SilverlightとJavaを使用したインターオペラビリティのシナリオを紹介し、サンプルコードを例にとってアーキテクチャの手引きを提供します。