浙江省建设厅信息中心网站,wordpress ajax失败,遵义外国网站制作,做包装盒子的厂家哪个网站RabbitMQ是一个老牌的非微软的消息队列组件#xff0c;一般来说应该能满足中小型公司对消息队列生产的需求#xff0c;平时我们在.NET开发环境下运用它是可能会需要RabbitMQ.Client的SDK库#xff0c;此库是官网提供#xff0c;目前最新发布版本是v4.1.3。在我们对接项目时… RabbitMQ是一个老牌的非微软的消息队列组件一般来说应该能满足中小型公司对消息队列生产的需求平时我们在.NET开发环境下运用它是可能会需要RabbitMQ.Client的SDK库此库是官网提供目前最新发布版本是v4.1.3。在我们对接项目时有时需要碰到对接上的注意随之而来感觉对官方提供的SDK客户端还可以进行一次包装开发。 Nuget安装命令Install-Package RabbitMQ.Client.Wrap GitHub地址https://github.com/rjf1979/RabbitMQ.Client.Wrap Nuget命令Install-Package RabbitMQ.Client.Wrap 以下就是对包装后的代码示例 string queueName queue-demo;
var client Client.Build(admin, 123456, VHostName, 192.168.xxx.xxx,5672);
client.Publisher.QueueDeclare(queueName);
string messageData test- DateTime.Now;//支持异步发布
await mqClient.Publisher.Publish(queueName, messageData); //同样Client对象可以复用订阅var tag client.Subscriber.Subscribe(queueName, message { Console.WriteLine($Recevice Data {message}Time {DateTime.Now}); return true; });Console.WriteLine($Subscriber Tag {tag} Time {DateTime.Now}); 如果需要异常事件记录 //发布者注册一个异常事件处理此处的注册异常事件只有在发生异常情况下会触发client.Publisher.RegisterExceptionHandler((message, exception)
{//处理消息 //处理异常}); 需要对日志记录自定义化只需要注册你自己的日志记录实现类 class MyLogger:RabbitMQ.Client.Wrap.Interface.ILog{public void Info(string message, Exception exception null, params object[] args){//实现你的记录日志代码}public void Warn(string message, Exception exception null, params object[] args){//实现你的记录日志代码}public void Error(string message, Exception exception null, params object[] args){//实现你的记录日志代码}public void Fatal(string message, Exception exception null, params object[] args){//实现你的记录日志代码}public void Debug(string message, Exception exception null, params object[] args){//实现你的记录日志代码//此日志会在#if DEBUG下会运行}public void Trace(string message, Exception exception null, params object[] args){//实现你的记录日志代码//此日志会在#if TRACE下会运行}} //把实现类注册进去 Logger.RegisiterLogger(new MyLogger()); 好了介绍到这里大家如果有兴趣可以去nuget上安装运用如果在使用当中有问题可以及时联系我我的QQ在右上角的介绍里 转载于:https://www.cnblogs.com/rjf1979/p/6900033.html