5.18.2. InVM の制限事項


InVM は、サービス間通信を促進するために使用される内部データ構造を最適化することにより、パフォーマンス上の利点を実現します。たとえば、メッセージを格納するために使用されるキューは永続的ではありません。つまり、障害が発生した場合にメッセージが失われる可能性があります。
さらに、キューが空になる前にサービスがシャットダウンされた場合には、それらのメッセージは配信されません。JBossESB ではサービスを複数の異なるトランスポートで同時に呼び出すことができるため、特定のメッセージタイプに適したトランスポートを選択することで高いパフォーマンスと信頼性を実現できるようにサービスを設計できます。
デフォルトでは、InVM トランスポートは参照によってメッセージを渡します。場合によっては、これが原因でデータの整合性の問題が発生する可能性があります。メッセージが ClassLoader 境界で交換される、クラスキャストの問題も言うまでもありません。
問題のサービスの inVMPassByValue プロパティーを true に設定することで、値によるメッセージの受け渡し (上記のような問題を回避する) をオンにすることができます。
<service category="ServiceCat" name="Service2" description="Test Service">
    <property name="inVMPassByValue" value="true" />

    <actions mep="RequestResponse">
        <action name="action" class="org.jboss.soa.esb.mock.MockAction" />
    </actions>
</service>
Copy to Clipboard Toggle word wrap

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat