
.netCore
隔壁王小猿
这个作者很懒,什么都没留下…
展开
-
RabbitMQ随手笔记(一)Unbuntu环境安装配置RabbitMQ-3.6
1.检查有没有安装JAVA java -version 如果没有安装,则先安装java2.官网下载 erlang 和 rabbitMQ 下载erlang可以手动去官网下载:http://www.erlang.org/ rabbitMQ官网:http://www.rabbitmq.com/3.安装erlang 将下载好的otp_src_20.2.tar.gz文件copy到ubun...原创 2018-03-09 09:47:23 · 680 阅读 · 0 评论 -
RabbitMQ随手笔记(十五)持久化(.netCore2.0)
交换器持久化://// 摘要:// Declare an exchange.//// 备注:// The exchange is declared non-passive and non-internal. The "nowait" option is // not exercised.[AmqpMethodDoNotImplement(null)]void...原创 2018-03-17 14:00:54 · 545 阅读 · 1 评论 -
RabbitMQ随手笔记(十四)死信队列、延迟队列(.netCore2.0)
DLX,Deal-Letter-Exchange,死信交换器。当一个小小在队列中变成死信(DeadMessage)之后,他能被重新发送到DLX中,与DLX绑定到队列就是死信队列。消息变成死信队列的情况:1.消息被拒绝,并且设置ReQueue参数false;2.消息过期;3.队列打到最大长度;生产者发送一条消息,经过交换器exchange_normal顺利存储到队列queue_normal中;由队列...原创 2018-03-17 12:17:13 · 3728 阅读 · 0 评论 -
RabbitMQ随手笔记(十三)TTL(.netCore2.0)
两种TTL:如果两种都设置了,按照TTL小的那个处理1.通过队列属性设置,通过队列发送出去的消息都遵循这个TTL;2.通过对消息本身单独设置第一种,一旦消息过期直接丢弃;第二种,即使消息过期,也不一定立刻丢弃,因为只有当消息被投递的时候,才能判断该消息是否过期。设置队列TTL:如果不设置TTL,则表示此消息不会过期,如果将TTL设置为0,则表示除非此时可以直接将消息投递到消费者,否则该消息立即被丢...原创 2018-03-17 11:24:19 · 578 阅读 · 0 评论 -
RabbitMQ随手笔记(十二)备份交换器(.netCore2.0)
备份交换器,AlternateExchange(AE);备份交换器是为了实现没有路由到队列的消息,与上篇介绍到的mandatory都是为了处理没有路由到的消息。AE相对于mandatory逻辑更简单,不需要另外实现basic.Return,但是要另外设置一个Exchange,指向默认队列,消费该默认队列的消费者,处理接收到的消息。 ConnectionFactory ...原创 2018-03-17 11:14:56 · 804 阅读 · 0 评论 -
RabbitMQ随手笔记(十一)mandatory参数(.netCore2.0)
消息发布的时候调用一下接口的时候,有个参数mandatoryvoid BasicPublish(string exchange, string routingKey, bool mandatory, IBasicProperties basicProperties, byte[] body);当mandatory设为true时,如果交换器无法根据自身类型和路由键找到一个符合条件的队列, 那么R...原创 2018-03-17 11:03:17 · 470 阅读 · 0 评论 -
RabbitMQ随手笔记(十)利用RabbitMQ记录日志(.netCore2.0)
本例中,我们将添加一个功能 - 我们将只能订阅一部分消息。例如,我们只能将重要的错误消息引导到日志文件(以节省磁盘空间),同时仍然能够在控制台上打印所有日志消息。C1代表记录日志到日志文件的消费者,C2代表在控制台打印出来日志的消费者,通过不同的routingKey绑定到不同的队列。一个Exchange可以通过同一个routingKey来bind多个队列也可以只bind一个队列接下来我们介绍一个记...原创 2018-03-17 10:39:41 · 2037 阅读 · 1 评论 -
RabbitMQ随手笔记(九)RabbitMQ实现RPC(netCore2.0)
实现RPC用到了IBasicProperties的两个属性:1.replyto:通常用来设置一个回调队列2.correlationId:用来关联请求(request)和其调用RPC之后的回复(response)。Server代码using System;using RabbitMQ.Client;using RabbitMQ.Client.Events;using System.Text;...原创 2018-03-16 18:37:22 · 1382 阅读 · 0 评论 -
RabbitMQ随手笔记(八)消费者端确认和拒绝(netCore2.0)
1.处理不可路由的消息如果发布的消息具有设置的“mandatory”标志,但不能传递,代理将返回给发送客户端(通过basic.return AMQP 0-9-1命令)。 为了通知这样的返回,客户可以订阅IModel.BasicReturn事件。 如果没有连接到事件的侦听器,则返回的消息将被静默删除。model.BasicReturn += new RabbitMQ.Client.Events.B...原创 2018-03-10 15:15:52 · 1296 阅读 · 0 评论 -
RabbitMQ随手笔记(七)消费消息(.netCore2.0)
RabbitMQ消费消息分为两种:推模式和拉模式1.推模式:可以通过持续订阅的方式来消费消息源码:1.1消息消费之后手动反馈ack var consumer = new EventingBasicConsumer(channel); consumer.Received += (model, ea) => ...原创 2018-03-10 14:40:16 · 2058 阅读 · 1 评论 -
RabbitMQ随手笔记(六)发送消息(.netCore2.0)
发送消息源码: string message = "Hello Word!"; var body = Encoding.UTF8.GetBytes(message); //消息属性 var properties = channel.CreateBasicProperties(...原创 2018-03-10 11:58:46 · 397 阅读 · 0 评论 -
RabbitMQ随手笔记(五)交换器和队列(.netCore2.0)
1.声明一个交换器和队列第一种方式,已知队列名称(由客户端分配而非RabbitMQ自动生成) //创建了一个持久化的,非自动删除的、绑定类型为direct的转换器 channel.ExchangeDeclare(EXCHANGE_NAME, "direct", true, false, null); //...原创 2018-03-10 11:28:54 · 380 阅读 · 0 评论 -
RabbitMQ随手笔记(四)连接RabbitMQ (.netCore2.0)
1.连接到RabbitMQ到代码清单 ConnectionFactory factory = new ConnectionFactory(); factory.HostName = IP_ADDRESS; factory.Port = PORT; factory.UserN...原创 2018-03-10 11:03:41 · 1646 阅读 · 0 评论 -
RabbitMQ随手笔记(三)RabbitMQ-“Hello World” 之消费者(.netCore2.0)
消费者代码主要包含以下几方面:01.创建factory02.创建连接03.创建channel04.创建消费者05.回收资源消费者代码:using System;using System.Collections.Generic;using System.Text;using System.Threading;using RabbitMQ.Client;using RabbitMQ.Clie...原创 2018-03-10 10:48:45 · 505 阅读 · 1 评论 -
RabbitMQ随手笔记(二)RabbitMQ-"Hello World" 之生产者(netCore2.0)
RabbitMQ 第一个程序,本文主要介绍生产者程序:主要分为5个步骤:01.创建factory02.创建Connection03.创建Channel04.Pulish消息05.回收资源生产者源码:using System;using System.Collections.Generic;using System.Text;using RabbitMQ.Client;namespace ...原创 2018-03-09 17:09:27 · 431 阅读 · 0 评论 -
Ubuntu 16.04 配置.netCore运行开发环境
微软官网上有相关的配置:https://github.com/dotnet/core/blob/master/release-notes/download-archives/2.0.0-download.mdUbuntu 16.04 配置总结如下:方法一:自动安装Ubuntu 16.04 and Linux Mint 18curl https://packages.microsoft.com/ke...翻译 2018-03-09 10:20:35 · 1870 阅读 · 0 评论 -
.netcore Json 序列化
using System;using System.Collections.Generic;using System.Data;using System.IO;using System.Linq;using System.Text;using Newtonsoft.Json;using Newtonsoft.Json.Converters;namespace Inspur.Gsp.CloudStr...原创 2018-05-22 21:21:44 · 7692 阅读 · 0 评论