ホームページ php教程 PHP开发 ActiveMQ のセッション設定の関連理解

ActiveMQ のセッション設定の関連理解

Nov 22, 2016 pm 01:14 PM
activemq

参考ブログ投稿: http://www.cnblogs.com/SzeCheng/p/4792084.html

参考ブログ投稿: http://activemq.apache.org/Producer-flow-control.html

用語の説明:

P: プロデューサー

C: コンシューマー

サーバー: P または ActiveMQ サービス

クライアント: ActiveMQ サービスまたは C

クライアントがメッセージを正常に受信したという兆候は、メッセージが署名されていることです。メッセージを正常に受信するには、通常、次の 3 つの段階が含まれます。

1.クライアントはメッセージを受け取ります

2.クライアントはメッセージを処理します

3.メッセージは署名されています。

session = connection.createSession(Boolean.false, Session.CLIENT_ACKNOWLEDGE);##第一个参数控制事务,第二个参数控制消息
ログイン後にコピー

トランザクションのないセッションでは、メッセージがいつどのように署名されるかは、セッションの設定によって異なります。

1. Session.AUTO_ACKNOWLEDGE

クライアントが受信または onMessage から正常に戻ると、Session はクライアントによるこのメッセージの受信に自動的に署名します。

2. Session.CLIENT_ACKNOWLEDGE

クライアントは、メッセージのacknowledgeメソッドを呼び出してメッセージに署名します。

message.acknowledge();

トランザクションを伴うセッションでは、トランザクションが送信されると署名が自動的に発生します。トランザクションがロールバックされると、受信したすべてのメッセージが再度配信されます。実際、ここでの Session.CLIENT_ACKNOWLEDGE はほとんど役に立ちません。

session = connection.createSession(Boolean.TRUE, Session.CLIENT_ACKNOWLEDGE);
ログイン後にコピー
session.commit();
ログイン後にコピー

概要:

1. プロデューサーの場合: サーバーは P、クライアントは ActiveMQ サービスです。 セッションは AUTO_ACKNOWLEDGE と CLIENT_ACKNOWLEDGE に設定されますが、状況によりますが、その差はそれほど大きくありません。

2. コンシューマの場合: サーバーは ActiveMQ で、クライアントは C です。セッションは AUTO_ACKNOWLEDGE に設定され、メッセージが受信されると (受信または onMessage が正常に返される)、消費は成功し、データはキューから削除されます。データが目的の結果に正しく処理されるかどうかは気にしません。セッションが CLIENT_ACKNOWLEDGE に設定されている場合、正常に消費するには確認メソッドを手動で呼び出す必要があり、その後データはキューから削除されます。

3. P と C のセッションが相互に影響を与えないように設定されているモード。


このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Java ActiveMQ の 20 のベスト プラクティス Java ActiveMQ の 20 のベスト プラクティス Feb 20, 2024 pm 09:48 PM

1. 適切なクライアント トランスポート プロトコルを選択します。 ActiveMQ は、STOMP、AMQP、OpenWire などのさまざまなクライアント トランスポート プロトコルをサポートします。パフォーマンスと信頼性を最適化するために、アプリケーションのニーズに基づいて適切なプロトコルを選択してください。 2. メッセージの永続性の構成: 永続的なメッセージはサーバーの再起動後も永続化されますが、非永続的なメッセージは永続化されません。重要なメッセージの場合は、信頼性の高い配信を保証するために永続性を選択します。デモ コード: //メッセージの永続性を設定します。 MessageProducerProducer=session.createProducer(destination);Producer.setdeliveryMode(Deliv)

Java ActiveMQ に関する 20 の高度なヒント Java ActiveMQ に関する 20 の高度なヒント Feb 20, 2024 pm 09:51 PM

1. メッセージ ルーティングでは、JMSSelectors を使用してメッセージをフィルタリングします。JMSSelectors を使用して、メッセージ属性に基づいて受信メッセージをフィルタリングし、関連するメッセージのみを処理します。カスタム メッセージ ルーターを作成する: カスタム ルーターを作成することで、ActiveMQ のルーティング機能を拡張して、特定の宛先にメッセージを送信します。ポーリング負荷分散を構成します。受信メッセージを複数のメッセージ コンシューマーに均等に分散して、処理能力を向上させます。 2. 永続化により永続的なセッションが可能になります。アプリケーションやサーバーに障害が発生した場合でも、メッセージを永続的に保存して損失を回避できます。デッド レター キュー (DLQ) を構成する: 処理に失敗したメッセージを再処理または分析のために DLQ に移動します。ジャーナル ストレージの使用: 永続的なメッセージのパフォーマンスを向上させ、メッセージのパフォーマンスを向上させます。

Java ActiveMQ: 分散システムで非同期通信を簡単に実装 Java ActiveMQ: 分散システムで非同期通信を簡単に実装 Feb 19, 2024 pm 10:18 PM

ActiveMQ は、Apache が開発したオープンソースのメッセージミドルウェアで、Java 言語を使用して開発されており、信頼性の高いメッセージング、非同期通信、クラスタサポートなどの特徴を持っています。 ActiveMQ は、異なるアプリケーション間でデータを交換でき、JMS、AMQP、MQtT などの複数のメッセージング プロトコルをサポートします。 1. ActiveMQ の利点 ActiveMQ は非常に成熟したメッセージ ミドルウェアであり、以下の利点があります: 信頼性の高いメッセージ配信: ActiveMQ は、ネットワーク障害やサーバーのダウンタイムの場合でも、メッセージの信頼性の高い配信を保証します。 。非同期通信: ActiveMQ は非同期通信をサポートしており、異なるアプリケーション間の非リアルタイム通信を可能にします。

SpringBoot に ActiveMQ を統合する方法 SpringBoot に ActiveMQ を統合する方法 May 11, 2023 pm 06:16 PM

目录结构導入maven依赖org.springframework.bootspring-boot-starter-parent1.5.4.RELEASEUTF-8UTF-81.8org.springframework.bootspring-boot-starterorg.springframework.bootspring-boot-starter-weborg.springframework.bootspring-boot- starter-testtestorg.springframework

Java ActiveMQ について知っておくべき 20 の概念 Java ActiveMQ について知っておくべき 20 の概念 Feb 21, 2024 am 08:40 AM

1. メッセージ ブローカーは ActiveMQ のコア コンポーネントであり、すべてのメッセージ フローの処理を担当します。アプリケーションが接続し、メッセージを送受信できるプラットフォームを提供します。 BrokerServicebroker=newBrokerService();broker.addConnector("tcp://0.0.0.0:61616");broker.start();2. メッセージ キューは、ActiveMQ にメッセージを格納するための論理概念コンテナです。メッセージ キューは、複数のプロデューサーからメッセージを受信し、それらを複数のコンシューマーに配信できます。 Queuequeue=session.createQueue("私の

Springboot に Activemq を統合する方法 Springboot に Activemq を統合する方法 May 21, 2023 pm 01:13 PM

1統合に必要な依存関係をインポートします: org.springframework.bootspring-boot-starter-activemq2application.properties ファイルを作成します spring.activemq.broker-url=tcp://127.0.0.1:61616spring.activemq.user=adminspring.activemq.password =adminserver.port=8080queue=myqueue3. カスタム構成ファイル QueueConfig は構成ファイルを読み取ります

Java JMS 入門: メッセージング テクノロジの基本を簡単にマスターする Java JMS 入門: メッセージング テクノロジの基本を簡単にマスターする Feb 26, 2024 am 10:34 AM

1. JavaJMS の概要 JavaJMS は、メッセージの作成、送信、受信に使用される Java API です。信頼性の高いメッセージング機能を提供し、分散システムやエンタープライズレベルのアプリケーションに最適です。メッセージング システムは、2 つのアプリケーションが異なるマシン上にある場合でも、あるアプリケーションから別のアプリケーションにメッセージを送信できます。 2.JMSAPIJMSAPI は、メッセージを送受信するための一連のインターフェイスとクラスを定義します。これらのインターフェイスとクラスには次のものがあります。 javax.jms.ConnectionFactory: JMS サーバーへの接続を作成するために使用されます。 javax.jms.Connection: JMSサーバーへの接続。ジャバックス。

Java ActiveMQ: 企業による信頼性の高い効率的なメッセージ送信の実現を支援 Java ActiveMQ: 企業による信頼性の高い効率的なメッセージ送信の実現を支援 Feb 19, 2024 pm 10:12 PM

ActiveMQ は完全にオープン ソースの Java メッセージ サーバーであり、Apache Software Foundation の最も人気のあるプロジェクトの 1 つです。これは Java Message Service (JMS) 仕様に従い、分散型、非同期型、メッセージ指向のアプリケーションを構築するための API セットを提供します。 ActiveMQ は、その信頼性、効率性、柔軟性で知られており、さまざまなエンタープライズ アプリケーションに最適です。信頼性: ActiveMQ は永続ストレージ メカニズムを使用して、メッセージの信頼性の高い配信を保証します。メッセージが ActiveMQ に送信されると、メッセージはディスクに書き込まれ、サーバーに障害が発生した場合でも、これらのメッセージは失われません。サーバーが再起動すると、これらのメッセージが永続ストアから復元され、渡されます。

See all articles