.net core cap - rabbitmq
前两篇介绍DotNetCore.CAP的链接
第一篇,项目初始化
第二篇,使用MySQL
安装依赖:DotNetCore.CAP.RabbitMQ
这里使用RabbitMQ Docker image作为服务容器,安装Docker工具的步骤省略,通过以下步骤启动RabbitMQ容器
一)创建bridge网络:
docker network create mq-net
docker network ls
二)启动容器
docker run --network mq-net -d --name my-rabbit -p 5672:5672 -p 15672:15672 --hostname myRabbit -e RABBITMQ_DEFAULT_VHOST=my_vhost -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin rabbitmq:3.7.7-management
其中的参数说明:
--network: 使用第一步创建的桥接网络
-d: 后台运行Container
--name:容器名称
-p:端口映射,5672是RabbitMQ的api地址
--hostname:主机名
-e: 环境变量参数
最后rabbitmq:3.7.7-management,版本信息,这里选择了有管理界面的版本
通过:http://localhost:15672 可访问到管理界面
完成RabbitMQ启动之后,我们回到项目代码
打开Programs.cs, 修改代码如下:
//x.UseInMemoryMessageQueue();
x.UseRabbitMQ(config =>
{
config.HostName = "localhost";
config.UserName = "admin";
config.Password = "admin";
config.VirtualHost = "my_vhost";
config.Port = 5672;
});
代码修改后,F5启动项目,触发publish方法
查看RabbitMQ的状态如下
参考:
https://github.com/dowhilecode/poc-microservice/issues/2