随笔分类 -  消息队列

并发支持,扩展支持
基于kafka-net实现的可以长链接的消息生产者
摘要:今天有点时间,我就来说两句。最近接触的Kafka相关的东西要多一些,其实以前也接触过,但是在项目使用中的经验不是很多。最近公司的项目里面使用了Kafka消息中间件,由于以前的人员编写的客户端的类不是很好,没有设计的概念,就是一个简单类的功能罗列,没有考虑到后期的扩展和维护(以后可能会兼容其他形式的消 阅读全文
posted @ 2018-08-03 13:25 可均可可 阅读(2197) 评论(1) 推荐(2) 编辑
基于Confluent.Kafka实现的KafkaConsumer消费者类和KafkaProducer消息生产者类型
摘要:一、引言 研究Kafka有一段时间了,略有心得,基于此自己就写了一个Kafka的消费者的类和Kafka消息生产者的类,进行了单元测试和生产环境的测试,还是挺可靠的。 二、源码 话不多说,直接上代码,代码不是很难,注释很全,希望大家多多发表意见,继续提升。 以上类型是接口定义,这个类定义的抽象类,可以 阅读全文
posted @ 2018-07-05 16:36 可均可可 阅读(6643) 评论(3) 推荐(1) 编辑
基于Confluent.Kafka实现的Kafka客户端操作类使用详解
摘要:一、引言 有段时间没有写东西了,当然不是没得写,还有MongoDB的系列没有写完呢,那个系列还要继续。今天正好是周末,有点时间,来写新东西吧。最近公司用了Kafka做为消息的中间件,最开始写的那个版本不是很好,我就要来优化它,所以就抽了一些时间来研究Kafka。很多概念性的东西就不写了,今天主要是上 阅读全文
posted @ 2018-06-30 16:00 可均可可 阅读(18049) 评论(6) 推荐(4) 编辑
[转载]RabbitMQ消息可靠性分析
摘要:有很多人问过我这么一类问题:RabbitMQ如何确保消息可靠?很多时候,笔者的回答都是:说来话长的事情何来长话短说。的确,要确保消息可靠不只是单单几句就能够叙述明白的,包括Kafka也是如此。可靠并不是一个绝对的概念,曾经有人也留言说过类似全部磁盘损毁也会导致消息丢失,笔者戏答:还有机房被炸了也会导 阅读全文
posted @ 2018-06-27 13:49 可均可可 阅读(1034) 评论(1) 推荐(1) 编辑
RabbitMQ系列教程之七:RabbitMQ的 C# 客户端 API 的简介
摘要:今天这篇博文是我翻译的RabbitMQ的最后一篇文章了,介绍一下RabbitMQ的C#开发的接口。好了,言归正传吧。 Net/C# 客户端 API简介1、主要的命名空间,接口和类 定义核心的API的接口和类被定义在RabbitMQ.Client这个命名空间下面: 所以要想使用RabbitMQ的功能, 阅读全文
posted @ 2017-07-17 11:48 可均可可 阅读(17670) 评论(0) 推荐(10) 编辑
RabbitMQ系列教程之六:远程过程调用(RPC)
摘要:远程过程调用(Remote Proceddure call【RPC】)(本实例都是使用的Net的客户端,使用C#编写) 在第二个教程中,我们学习了如何使用工作队列在多个工作实例之间分配耗时的任务。 但是,如果我们需要在远程计算机上运行功能并等待结果怎么办? 那是一个不同的故事。 此模式通常称为远程过 阅读全文
posted @ 2017-07-12 11:32 可均可可 阅读(3747) 评论(4) 推荐(1) 编辑
RabbitMQ系列教程之五:主题(Topic)
摘要:(本实例都是使用的Net的客户端,使用C#编写),说明,中文方括号【】表示名词。 在上一个教程中,我们改进了我们的日志记录系统。 没有使用只能够进行虚拟广播的【Fanout】交换机,而是使用了【Direct】类型的交换机,这样做就可以让我们有可能选择性地接收日志。 虽然使用【Direct】类型的【消 阅读全文
posted @ 2017-07-06 14:23 可均可可 阅读(5648) 评论(0) 推荐(1) 编辑
RabbitMQ系列教程之四:路由(Routing)
摘要:(使用Net客户端)在上一个教程中,我们构建了一个简单的日志系统,我们能够向许多消息接受者广播发送日志消息。在本教程中,我们将为其添加一项功能 ,这个功能是我们将只订阅消息的一个子集成为可能。 例如,我们可以只将关键的错误消息输出到日志文件(以节省磁盘空间),同时仍然可以在控制台上打印所有日志消息。 阅读全文
posted @ 2017-06-29 16:13 可均可可 阅读(3241) 评论(0) 推荐(1) 编辑
RabbitMQ系列教程之三:发布/订阅(Publish/Subscribe)
摘要:(本教程是使用Net客户端,也就是针对微软技术平台的) 在前一个教程中,我们创建了一个工作队列。工作队列背后的假设是每个任务会被交付给一个【工人】。在这一部分我们将做一些完全不同的事情--我们将向多个【消费者】传递信息。这种模式被称为“发布/订阅”。 为了说明这种模式,我们将构建一个简单的日志系统。 阅读全文
posted @ 2017-06-21 10:52 可均可可 阅读(8975) 评论(4) 推荐(2) 编辑
RabbitMQ系列教程之二:工作队列(Work Queues)
摘要:今天开始RabbitMQ教程的第二讲,废话不多说,直接进入话题。 (使用.NET 客户端 进行事例演示) 在第一个教程中,我们编写了一个从命名队列中发送和接收消息的程序。在本教程中,我们将创建一个工作队列,这个队列将用于在多个工人之间分配耗时的任务。 工作队列【又名:任务队列】背后主要的思想是避免立 阅读全文
posted @ 2017-06-05 10:49 可均可可 阅读(5374) 评论(3) 推荐(0) 编辑
RabbitMQ系列教程之一:我们从最简单的事情开始!Hello World
摘要:一、简介 RabbitMQ是一个消息的代理器,用于接收和发送消息,你可以这样想,他就是一个邮局,当您把需要寄送的邮件投递到邮筒之时,你可以确定的是邮递员先生肯定会把邮件发送到需要接收邮件的人的手里,不会送错的。在这个比喻中,RabbitMQ就是一个邮箱,也可以理解为邮局和邮递员,他们负责把消息发送出 阅读全文
posted @ 2017-06-02 18:46 可均可可 阅读(16216) 评论(5) 推荐(3) 编辑
如何安装和配置RabbitMQ
摘要:今天开始一个小小的练习,学习一下安装和配置RabbitMQ,为什么要学它,因为WCF可以完全兼容和使用RabbitMQ了。我们新的大数据系统需要使用消息队列,所以就开始研究一下,把它重新封装一下,更便于使用。好了,言归正传。 1.安装 我们先看看安装吧,其实挺简单的,由于Rabbit MQ 是建立在 阅读全文
posted @ 2017-05-11 15:29 可均可可 阅读(3027) 评论(3) 推荐(2) 编辑
Connecting to MQSeries with .NET
摘要:By connecting to MQSeries withing a .NET application, first it has to be done is to install MQ Series client at the machine which will host the applic 阅读全文
posted @ 2017-05-10 15:13 可均可可 阅读(502) 评论(0) 推荐(0) 编辑
二、消息队列之如何在C#中使用RabbitMQ
摘要:1、什么是RabbitMQ。详见 http://www.rabbitmq.com/。 作用就是提高系统的并发性,将一些不需要及时响应客户端且占用较多资源的操作,放入队列,再由另外一个线程,去异步处理这些队列,可极大的提高系统的并发能力。 MQ全称为Message Queue, 消息队列(MQ)是一种 阅读全文
posted @ 2017-05-04 14:39 可均可可 阅读(5945) 评论(2) 推荐(1) 编辑
一、消息队列之ActiveMQ的安装、配置和C#样例代码
摘要:最近有时间了,研究一下消息队列ActvieMQ,结合自己的实践和网上的一些大家内容,整理如下,所有步骤和链接均是正确的。 1、ActiveMQ ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线。ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Pro 阅读全文
posted @ 2017-03-28 14:33 可均可可 阅读(1159) 评论(0) 推荐(0) 编辑