【EasyNetQ】- 快速开始

欢迎来到EasyNetQ。本指南向您展示如何在大约10分钟内启动并运行EasyNetQ。

你可以在GitHub上找到这个快速入门的代码:https//github.com/mikehadlow/EasyNetQTest

EasyNetQ是一个简单易用的RabbitMQ客户端API。首先安装RabbitMQ:

  1. 安装Erlang:http//www.erlang.org/download.html
  2. 安装RabbitMQ服务器:http//www.rabbitmq.com/download.html
  3. 您可能也想启用RabbitMQ管理API:http//www.rabbitmq.com/management.html

现在您应该可以导航到RabbitMQ管理URL:

http://localhost:15672/

RabbitMQ管理UI

接下来打开Visual Studio并使用三个C#项目创建一个名为EasyNetQTest的新解决方案:

Messages   (Class Library)
Publisher  (Console Application)
Subscriber (Console Application)

打开NuGet包管理器控制台并在Publisher和Subscriber项目中安装EasyNetQ,方法是键入:

Install-Package EasyNetQ -ProjectName Publisher
Install-Package EasyNetQ -ProjectName Subscriber

在Messages项目中创建一个新类TextMessage.cs:

namespace Messages
{
    public class TextMessage
    {
        public string Text { get; set; } 
    }
}

将Messages项目的引用添加到Publisher和Subscriber项目。

您的解决方案应如下所示:

解决方案探险家

在Publisher项目中打开Program.cs类,然后键入以下代码:

using System;
using EasyNetQ;
using Messages;

namespace Publisher
{
    class Program
    {
        static void Main(string[] args)
        {
            using (var bus = RabbitHutch.CreateBus("host=localhost"))
            {
                var input = "";
                Console.WriteLine("Enter a message. 'Quit' to quit.");
                while ((input = Console.ReadLine()) != "Quit")
                {
                    bus.Publish(new TextMessage
                        {
                            Text = input
                        });
                }
            }
        }
    }
}

在Subscriber项目中打开另一个Program.cs类并键入以下代码:

using System;
using EasyNetQ;
using Messages;

namespace Subscriber
{
    class Program
    {
        static void Main(string[] args)
        {
            using (var bus = RabbitHutch.CreateBus("host=localhost"))
            {
                bus.Subscribe<TextMessage>("test", HandleTextMessage);

                Console.WriteLine("Listening for messages. Hit <return> to quit.");
                Console.ReadLine();
            }
        }

        static void HandleTextMessage(TextMessage textMessage)
        {
            Console.ForegroundColor = ConsoleColor.Red;
            Console.WriteLine("Got message: {0}", textMessage.Text);
            Console.ResetColor();
        }
    }
}

现在右键单击Subscriber项目并选择“设置为启动项目”,然后单击ctrl-F5(启动而不调试)以启动Subscriber控制台应用程序。使用“发布”项目重复相同的步骤。

您现在应该运行两个控制台应用程序,其中包含大量调试信息,表明EasyNetQ已成功连接到您的RabbitMQ服务器。现在在发布者控制台应用程序中输入一些消息 您应该看到它已收到它们的订阅者应用程序报告。

 

 

posted @ 2018-08-07 15:22  wangwust  阅读(476)  评论(0编辑  收藏  举报