在上一篇中,我们介绍了消息的顺序收发保证: Azure Messaging-ServiceBus Messaging消息队列技术系列3-消息顺序保证 在本文中我们主要介绍下复杂对象消息是否需要支持序列化以及消息的持久化. 在实际的业务应用开发中,我们经常会将复杂业务对象放到消息里面,实现异构系统之间的集成.模块间的解耦等等. 同时,我们还比较关注消息队列服务是否支持消息的持久化,消息队列如果宕机后持久化的消息是否可以还原? 在Azure Messaging的官方说明中,没有特地的介绍复杂对象消息…
Azure Messaging ServiceBus Messaging相关的技术系列,最近已经整理了不少了,统一做一个索引链接,置顶. 方便查找,并后续陆陆续续再增加. 学习消息队列技术,可以先看第一篇技术概念篇,方便大家快速入门: 消息队列技术之基本概念 Azure Messaging ServiceBus Messaging相关的技术系列 Azure Messaging-ServiceBus Messaging消息队列技术系列1-基本概念和架构 Azure Messaging-Servic…
上篇博客中,我们用实际的业务场景和代码示例了Azure Messaging-ServiceBus Messaging对复杂对象消息的支持和消息的持久化: Azure Messaging-ServiceBus Messaging消息队列技术系列4-复杂对象消息是否需要支持序列化和消息持久化 本文中我们主要研究并介绍Azure Messaging对重复消息的支持. MessageReceiver 对象创建时可以指定消息接收模式: ReceiveAndDelete 和 PeekLock (默认),其中…
上一篇:Window Azure ServiceBus Messaging消息队列技术系列2-编程SDK入门  http://www.cnblogs.com/tianqing/p/5944573.html 介绍了Azure Service Bus的编程SDK(主要的编程接口) 本文中我们以实际的使用场景来说明Azure Messaging是否支持以及如何编码实现:消息的收发顺序保证. 消息的收发在实际业务中往往是有顺序的:发送时1-2-3-4-5,接收时也必须是1-2-3-4-5,即FIFO特性…
上篇博文中我们介绍了Azure ServiceBus Messaging的消息事务机制: Azure Messaging-ServiceBus Messaging消息队列技术系列7-消息事务(2017-03-30 22:12) 本文中我们介绍一下ServiceBus Messaging的一些配额,或者说使用说明和限制.原文请参考: https://docs.microsoft.com/zh-cn/azure/service-bus-messaging/service-bus-quotas 我们着…
上篇博文中我们介绍了Azure Messaging的重复消息机制.At most once 和At least once. Azure Messaging-ServiceBus Messaging消息队列技术系列5-重复消息:at-least-once at-most-once 本文中我们主要研究并介绍Azure Messaging的消息回执机制:实际应用场景: 同步收发场景下,消息生产者和消费者双向应答模式,例如:张三写封信送到邮局中转站,然后李四从中转站获得信,然后在写一份回执信,放到中转站…
前段时间研究了Window Azure ServiceBus Messaging消息队列技术,搞了很多技术研究和代码验证,最近准备总结一下,分享给大家. 首先,Windows Azure提供了两种类型的消息队列机制:Azure Queues和ServiceBus Queues. 其中,Azure Queues,作为Azure Storage基础设施的一部分,提供了一套简单的基于Rest的Interface,面向不同的服务间提供可靠的.持久化的消息队列. ServiceBus Queues作为Az…
各位,上一篇基本概念和架构中,我们介绍了Window Azure ServiceBus的消息队列技术的概览.接下来,我们进入编程模式和详细功能介绍模式,一点一点把ServiceBus技术研究出来. 本章我们主要介绍ServiceBus的编程SDK编程入门. 首先,微软提供了两个主要的Nuget Packages: Microsoft Azure Service Bus 3.4.0 主要的NameSpace有以下几个: 1. Microsoft.ServiceBus,这个下面有两个主要的类:Tok…
前段时间研究了Window Azure ServiceBus Messaging消息队列技术,搞了很多技术研究和代码验证,最近准备总结一下,分享给大家. 首先,Windows Azure提供了两种类型的消息队列机制:Azure Queues和ServiceBus Queues. 其中,Azure Queues,作为Azure Storage基础设施的一部分,提供了一套简单的基于Rest的Interface,面向不同的服务间提供可靠的.持久化的消息队列. ServiceBus Queues作为Az…
各位,上一篇基本概念和架构中,我们介绍了Window Azure ServiceBus的消息队列技术的概览.接下来,我们进入编程模式和详细功能介绍模式,一点一点把ServiceBus技术研究出来. 本章我们主要介绍ServiceBus的编程SDK编程入门. 首先,微软提供了两个主要的Nuget Packages: Microsoft Azure Service Bus 3.4.0 主要的NameSpace有以下几个: 1. Microsoft.ServiceBus,这个下面有两个主要的类:Tok…
上篇博文中我们介绍了Azure Messaging-ServiceBus Messaging消息回执机制. Azure Messaging-ServiceBus Messaging消息回执机制 本文中我们主要研究消息的事务.直奔主题: Service Bus Queues支持事务,基于TransactionScope Service Bus Queues provide support for local transactions in the context of a single queue…
Java消息服务(Java Message Service ,JMS)是一个Java标准,定义了使用消息代理的通用API .在JMS出现之前,每个消息代理都有私有的API,这就使得不同代理之间的消息代码很难通用.但是借助JMS,所有遵从规范的实现都使用通用的接口,这就类似于JDBC为数据库操作提供了通用的接口一样. Spring通过基于模板的抽象为JMS功能提供了支持,这个模板也就是JmsTemplate.使用JmsTemplate ,能够非常容易地在消息生产方发送队列和主题消息,在消费消息的那…
一.在前面介绍了system v 消息队列的相关知识,现在来稍微看看posix 消息队列. posix消息队列的一个可能实现如下图: 其实消息队列就是一个可以让进程间交换数据的场所,而两个标准的消息队列最大的不同可能只是api 函数的不同,如system v 的系列函数是msgxxx,而posix 是mq_xxx.posix 消息队列也有一些对消息长度等的限制,man 7 mq_overview: simba@ubuntu:~/Documents/code/linux_programming/U…
原文地址:http://www.inter12.org/archives/834 一 PRODUCER的API 1.Producer的创建,依赖于ProducerConfig public Producer(ProducerConfig config); 2.单个或是批量的消息发送 public void send(KeyedMessage<K,V> message); public void send(List<KeyedMessage<K,V>> messages)…
自关联对象在实际开发中用的还是比较多,例如常见的树形菜单.本文是自己实际的一个小测试,可以解决循环引用对象的json序列化问题,文笔不好请多见谅,如有错误请指出,希望有更好的解决方案,一起进步. 构造一个自关联实体 构造序列化数据 无任何处理序列化输出 可以看下面的表格数据是嵌套的 无任何处理直接序列化 解决 重写JsonResult, ReferenceLoopHandling.Ignore忽略其循环引用 调用  最终调用结果…
Azure IoT Hub和Event Hub相关的技术系列,最近已经整理了不少了,统一做一个索引链接,置顶. Azure IoT 技术研究系列1-入门篇 Azure IoT 技术研究系列2-设备注册到Azure IoT Hub Azure IoT 技术研究系列3-设备到云.云到设备通信 Azure IoT 技术研究系列4-Azure IoT Hub的配额及缩放级别 Azure IoT 技术研究系列5-Azure IoT Hub与Event Hub比较 Azure Event Hub 技术研究系…
###主线程不能被阻塞* 在Android中,主线程被阻塞会导致应用不能刷新ui界面,不能响应用户操作,用户体验将非常差* 主线程阻塞时间过长,系统会抛出ANR异常* ANR:Application Not Response:应用无响应* 任何耗时操作都不可以写在主线程* 因为网络交互属于耗时操作,如果网速很慢,代码会阻塞,所以网络交互的代码不能运行在主线程###只有主线程能刷新ui* 刷新ui的代码只能运行在主线程,运行在子线程是没有任何效果的* 如果需要在子线程中刷新ui,使用消息队列机制#…
消息队列已经逐渐成为分布式应用场景.内部通信.以及秒杀等高并发业务场景的核心手段,它具有低耦合.可靠投递.广播.流量控制.最终一致性 等一系列功能. 无论是 RabbitMQ.RocketMQ.ActiveMQ.Kafka还是其它等,都有的一些基本原理.术语.机制等,总结分享出来,希望大家在使用消息队列技术的时候能够快速理解. 1. 消息生产者.消息者.队列 消息生产者Producer:发送消息到消息队列 消息消费者Consumer:从消息队列接收消息. Broker:概念来自与Apache A…
进程间通信系列 之 概述与对比   http://blog.csdn.net/younger_china/article/details/15808685  进程间通信系列 之 共享内存及其实例   http://blog.csdn.net/younger_china/article/details/15961557  进程间通信系列 之 共享内存简单实例   http://blog.csdn.net/younger_china/article/details/15991081  进程间通信系列…
概述 学习和使用kafka不知不觉已经将近5年了,觉得应该总结整理一下之前的知识更好,所以决定写一系列kafka学习笔记,在总结的基础上希望自己的知识更上一层楼.写的不对的地方请大家不吝指正,感激万分.第一篇介绍消息队列概况和kafka的入门知识. 消息队列系统 首先说一下消息队列的含义,"消息系统"这个词是从英文翻译过来的,英文的名字是"Messaging System",稍微学习过英语基础的都知道要翻译成消息队列,但是也有一些大家觉得并不正确,因为它片面强调了消…
消息队列是大型复杂系统解耦利器.本文根据应用广泛的消息队列RabbitMQ,介绍Spring Boot应用程序中队列中间件的开发和应用. 一.RabbitMQ基础 1.RabbitMQ简介 RabbitMQ是Spring所在公司Pivotal自己的产品,是基于AMQP高级队列协议的消息中间件,采用erlang开发,所以你的RabbitMQ队列服务器需要erlang环境. 可以直接官方的说法:RabbitMQ is the most widely deployed open source mess…
消息队列(Message Queue)简介及其使用 摘要:利用 MSMQ(Microsoft Message Queue),应用程序开发人员可以通过发送和接收消息方便地与应用程序进行快速可靠的通信.消息处理为您提供了有保障的消息传递和执行许多业务处理的可靠的防故障方法. 利用 MSMQ(Microsoft Message Queue),应用程序开发人员可以通过发送和接收消息方便地与应用程序进行快速可靠的通信.消息处理为您提供了有保障的消息传递和执行许多业务处理的可靠的防故障方法. MSMQ与XM…
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成.微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章.然而由机器翻译的文章并不总是完美的.它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误.虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责.如果您发现了错误并希望帮助我们提高机器翻译技术,请完成文…
[源码分析] 消息队列 Kombu 之 Consumer 目录 [源码分析] 消息队列 Kombu 之 Consumer 0x00 摘要 0x01 综述功能 0x02 示例代码 0x03 定义 3.1 定义 3.2 Queue 0x04 Init 4.1 处理调用 4.1.1 queues 4.1.2 channel 4.1.3 on_message 4.2 建立联系 4.2.1 channel与queue 4.2.2 channel与exchange 4.2.3 Exchange & Bind…
[源码分析] 消息队列 Kombu 之 Hub 0x00 摘要 本系列我们介绍消息队列 Kombu.Kombu 的定位是一个兼容 AMQP 协议的消息队列抽象.通过本文,大家可以了解 Kombu 中的 Hub 概念. 0x01 示例代码 下面使用如下代码来进行说明. 本示例来自https://liqiang.io/post/kombu-source-code-analysis-part-5系列,特此深表感谢. def main(arguments): hub = Hub() exchange =…
[源码分析] 消息队列 Kombu 之 mailbox 0x00 摘要 本系列我们介绍消息队列 Kombu.Kombu 的定位是一个兼容 AMQP 协议的消息队列抽象.通过本文,大家可以了解 Kombu 中的 mailbox 概念,顺便可以把之前几篇文章内容再次梳理下. 0x01 示例代码 本文实例代码来自 https://liqiang.io/post/celery-source-analysis-remote-manager-control,深表感谢. 示例代码分为两部分˛ Node可以理解…
目前业界流行的分布式消息队列系统(或者可以叫做消息中间件)种类繁多,比如,基于Erlang的RabbitMQ.基于Java的ActiveMQ/Apache Kafka.基于C/C++的ZeroMQ等等,都能进行大批量的消息路由转发.它们的共同特点是,都有一个消息中转路由节点,按照消息队列里面的专业术语,这个角色应该是broker.整个消息系统通过这个broker节点,进行从消息生产者Producer到消费者Consumer的消息路由.当然了,生产者和消费者可以是多对多的关系.消息路由的时候,可以…
在本人的上一篇博客文章:Netty构建分布式消息队列(AvatarMQ)设计指南之架构篇 中,重点向大家介绍了AvatarMQ主要构成模块以及目前存在的优缺点.最后以一个生产者.消费者传递消息的例子,具体演示了AvatarMQ所具备的基本消息路由功能.而本文的写作目的,是想从开发.设计的角度,简单的对如何使用Netty,构建分布式消息队列背后的技术细节.原理,进行一下简单的分析和说明. 首先,在一个企业级的架构应用中,究竟何时需引入消息队列呢?本人认为,最经常的情况,无非这几种:做业务解耦.事件…
在一个大型的分布式系统中,消息队列是不可缺少的中间件,能很好的解决异步消息.应用解耦.均衡并发等问题.在.net中,偶然发现一个效率不错.安全可靠.功能齐全的消息组件,忍不住翻译过来,供大家快速预览. 注:原作者用windows服务启动消息队列服务,但是本人在win10上测试出错,可自行改成控制台启动消息队列服务,然后用第三方工具注册服务(如:SrvanyUI) 原文:http://www.codeproject.com/Articles/193611/DotNetMQ-A-Complete-M…
本章我们来了解下MSMQ的基本概念和开发过程.MSMQ全称MicroSoft Message Queue,微软消息队列,是在多个不同应用之间实现相互通信的一种异步传输模式,相互通信的应用可以分布于同一台机器上,也可以分布于相连的网络空间的任一位置.它的实现原理是:消息的发送者要把自己想要发送的信息放入一个容器中(我们称之为Message),然后把它保存至一个系统公用空间的消息队列(Message Queue)中,本地或者是异地的消息接收程序再从该队列中取出发给它的消息进行处理.其中两个重要的概念…