c# ActiveMQ

要下载 ActiveMQ 5.15.4 版本,可按照以下步骤操作:

访问官方下载页面:

打开浏览器,访问 ActiveMQ 官方下载存档页面

解压缩pache-activemq-5.15.4-bin.zip,然后双击pache-activemq-5.15.4-bin\bin\win32\activemq.bat运行ActiveMQ程序。

启动ActiveMQ以后,可以使用浏览器登陆:http://localhost:8161/admin/验证, 默认用户名是:admin 密码是:admin

(前提是配置好好JDK环境)

引入dll ,这两个dll的版本都是1.8

Apache.NMS.ActiveMQ.dll

Apache.NMS.dll

csharp 复制代码
using System;
using Apache.NMS;
using Apache.NMS.ActiveMQ;
using Apache.NMS.ActiveMQ.Commands;

class Program
{
    static void Main(string[] args)
    {
     string userName = "adman";
    string Password = "123456";
        // 连接工厂,创建到ActiveMQ的连接
        ConnectionFactory factory = new ConnectionFactory("tcp://localhost:61616");
        factory.UserName = userName;
        factory.Password = Password;
        using (IConnection connection = factory.CreateConnection())
        using (ISession session = connection.CreateSession())
        {
            connection.Start();
            
            // 创建队列目的地
            IDestination destination = session.GetQueue("TestQueue");
            
            // 创建消息生产者
            using (IMessageProducer producer = session.CreateProducer(destination))
            {
                // 创建文本消息
                ITextMessage message = session.CreateTextMessage("Hello ActiveMQ from C#!");
                
                // 发送消息
                producer.Send(message);
                Console.WriteLine("消息发送成功: " + message.Text);
            }
            
            // 创建消息消费者
            using (IMessageConsumer consumer = session.CreateConsumer(destination))
            {
                // 同步接收消息(等待10秒)
                IMessage receivedMessage = consumer.Receive(TimeSpan.FromSeconds(10));
                
                if (receivedMessage is ITextMessage textMessage)
                {
                    Console.WriteLine("收到消息: " + textMessage.Text);
                }
                else
                {
                    Console.WriteLine("未收到消息或消息类型不正确");
                }
            }
        }
    }
}

在ActiveMQ的C#客户端中,alwaysSessionAsync的默认值为true

参考连接:
https://cloud.tencent.com/developer/article/2163298
(activemq设置用户名密码,提高安全访问)

https://blog.csdn.net/u010316188/article/details/86771100[添加链接描述](https://blog.csdn.net/u010316188/article/details/86771100)

相关推荐
AI即插即用41 分钟前
即插即用系列(代码实践)专栏介绍
开发语言·人工智能·深度学习·计算机视觉
码农水水1 小时前
蚂蚁Java面试被问:混沌工程在分布式系统中的应用
java·linux·开发语言·面试·职场和发展·php
喵了meme1 小时前
c语言经验分享
c语言·开发语言
Knight_AL1 小时前
用 JOL 验证 synchronized 的锁升级过程(偏向锁 → 轻量级锁 → 重量级锁)
开发语言·jvm·c#
啊阿狸不会拉杆2 小时前
《数字图像处理》第 4 章 - 频域滤波
开发语言·python·数字信号处理·数字图像处理·频率域滤波
江沉晚呤时2 小时前
从零实现 C# 插件系统:轻松扩展应用功能
java·开发语言·microsoft·c#
Knight_AL2 小时前
Java 多态详解:概念、实现机制与实践应用
java·开发语言
我只有一台windows电脑2 小时前
西门子S7通讯(三)
c#
Omigeq2 小时前
1.2.1 - 图搜索算法(以A*为例) - Python运动规划库教程(Python Motion Planning)
开发语言·python·机器人·图搜索算法
资深流水灯工程师2 小时前
基于Python的Qt开发之Pyside6 串口接收数据被分割的解决方案
开发语言·python·qt