消息中间件
文章平均质量分 82
chszs
这个作者很懒,什么都没留下…
展开
-
MQTT基础——Part 2. 发布/订阅模式
MQTT基础——Part 2. 发布/订阅模式作者:chszs,未经博主允许不得转载。经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs本文是《MQTT基础》系列博客的第二节,本节主要讲述发布/订阅模式。首先关注发布/订阅的基本特征,然后再聚焦到MQTT本身,着重讲述MQTT协议与传统消息队列协议的不同。一、发布/订阅模式发布/订阅模式即Pub/Sub,是传统客户原创 2016-06-21 18:25:51 · 15231 阅读 · 1 评论 -
Smack 4.1.x升级指南
Smack 4.1.x升级指南作者:chszs,版权所有,未经同意,不得转载。博主主页:http://blog.csdn.net/chszs一、Smack 4.1的主要改进Smack 4.1.x最大的改进有两点:1)支持XEP-198规范,即流管理2)原生支持AndroidSmack 4.1使得原先的aSmack库可以丢入垃圾堆了。注意aSmack的最新版本只到4.0.7版。二、流管理流管理(原创 2015-09-19 17:06:54 · 5479 阅读 · 1 评论 -
Openfire Hazelcast集群详解
Openfire Hazelcast集群详解作者:chszs,版权所有,未经同意,不得转载。博主主页:http://blog.csdn.net/chszs一、概述Openfire Hazelcast插件提供了在一个集群上运行多个冗余Openfire服务器的支持。通过把Openfire运行为一个集群,可以把终端的连接分配到多台Openfire服务器上,同时还提供了服务器的故障转移。Hazelcast个原创 2015-09-16 01:31:07 · 8376 阅读 · 1 评论 -
Openfire修改Domain域值
Openfire修改Domain域值作者:chszs,版权所有,未经同意,不得转载。博主主页:http://blog.csdn.net/chszs与Tigase不同,Openfire安装后,它的配置属性不是写入XML文件中,而是基本上都存到数据库表里。配置属性所在的数据表为ofProperty表mysql> select * from ofProperty;+------------------原创 2015-09-09 15:35:37 · 7378 阅读 · 3 评论 -
XMPP客户端库Smack 4.0.6版开发之一
XMPP客户端库Smack 4.0.6版开发之一 作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs一、Smack库概述Smack是一个开源、易用的XMPP/Jabber客户端库,它使用Java语言开发,由Jive Software开发。Smack的优点是编程简单。Smack的缺点是其API并非为大量并发用户设计,每个客户都要1个线程,占用资源相对较,因此用Smac原创 2014-11-27 14:05:50 · 17154 阅读 · 4 评论 -
XMPP客户端库Smack 4.0.6版开发之六
XMPP客户端库Smack 4.0.6版开发之六作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs五、名单Roster和在线状态Presence名单可以让你跟踪其他用户是否在线,而且名单可以让你把用户组织到群组,比如朋友群或工作群。而其它的即时通信IM系统则把名单Roster视为好友列表、联系人列表等等。 1、名单条目名单中的每一个用户都由RosterEn原创 2014-11-30 10:44:07 · 5860 阅读 · 3 评论 -
XMPP客户端库Smack 4.0.6版开发之四
XMPP客户端库Smack 4.0.6版开发之四作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs三、XMPPConnection管理1、创建连接org.jivesoftware.smack.XMPPConnection类可管理到XMPP服务器的连接,它默认的连接实现类是org.jivesoftware.smack.XMPPTCPConnection。它主原创 2014-11-30 10:39:57 · 9343 阅读 · 2 评论 -
XMPP客户端库Smack 4.0.6版开发之二
XMPP客户端库Smack 4.0.6版开发作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs三、Smack库的特征1、极度简单易用,API功能强大发送一条文本消息给某个用户只需几行代码:AbstractXMPPConnection connection = new XMPPTCPConnection("mtucker", "password", "jab原创 2014-11-28 15:12:15 · 14710 阅读 · 1 评论 -
XMPP客户端库Smack 4.0.6版开发之三
XMPP客户端库Smack 4.0.6版开发之三作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs六、建立连接的例子XMPPConnection类用于创建一个到XMPP服务器的连接,代码例子如下:// 创建一个到jabber.org服务器的连接AbstractXMPPConnection conn1 = new XMPPTCPConnection("us原创 2014-11-29 12:56:31 · 12291 阅读 · 3 评论 -
Openfire使用上的一些技巧
Openfire使用上的一些技巧作者:chszs,版权所有,未经同意,不得转载。博主主页:http://blog.csdn.net/chszs1、把Openfire安装为系统服务对于RedHat、CentOS、Fedora之类的系统,可以采用RPM包安装Openfire,安装后自然有了Openfire服务。此时可以通过命令启动或停止Openfire:# /etc/init.d/openfire st原创 2015-09-22 12:52:31 · 8773 阅读 · 0 评论 -
Tigase负载均衡策略
Tigase从5.2.0版开始,引入了负载均衡功能,可以把终端访问用户重定向到最适合的集群节点上。此负载均衡功能依赖于see-other-host的XMPP流错误消息(stream error message)。此机制背后的基本原则是如果用户当前正尝试连接的节点与返回消息的节点不是集群中 的同一个节点,那么用户将被重定向。此原则需要获得用户的JID实现重定向。原创 2015-11-17 13:18:37 · 4712 阅读 · 0 评论 -
Protostuff详解
Protostuff详解作者:chszs,未经博主允许不得转载。经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs一、Protostuff介绍Protostuff是一个开源的、基于Java语言的序列化库,它内建支持向前向后兼容(模式演进)和验证功能。Protostuff支持的序列化格式包括:protobufprotostuffgraph 即序列化对象图,即原创 2016-01-04 17:13:47 · 24189 阅读 · 2 评论 -
MQTT基础——Part 1. 认识MQTT
MQTT基础——Part 1. 认识MQTT作者:chszs,未经博主允许不得转载。经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs本文是《MQTT基础》系列文章的第一部分,这个系列会详述MQTT协议的方方面面,包括MQTT协议的核心功能和概念,以及协议的一些基本信息和背景。我不仅会探讨MQTT协议本身,还会介绍MQTT的安全或客户端库。因此,如果你对MQTT感原创 2016-06-11 11:29:47 · 6746 阅读 · 1 评论 -
IBM Watson物联网平台的两个MQTT工具
IBM Watson物联网平台的两个MQTT工具作者:chszs,未经博主允许不得转载。经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs一、MQTT HelperBluemix平台提供了一个MQTT Helper工具,使用它可以连接到MQTT代理Broker,并进行订阅和发布到MQTT主题(topic)等操作。MQTT Helper工具是一个在线网页工具,使用它原创 2016-05-08 21:51:31 · 14583 阅读 · 3 评论 -
NATS服务器部署及测试
NATS服务器部署及测试作者:chszs,未经博主允许不得转载。NATS的服务器是使用Golang语言开发的,其可执行文件的名字为gnatsd,表示Go NATS Daemon。NATS服务器是一个开源软件,基于MIT许可证发布。NATS Server有Linux版、Mac版、Windows版。下面以Linux版为例,详述其部署过程。原创 2016-03-29 00:10:26 · 11726 阅读 · 0 评论 -
NATS连线协议详解
NATS连线协议详解作者:chszs,未经博主允许不得转载。经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszsNATS的连线协议是一个简单的、基于文本的发布/订阅风格的协议。客户端连接到gnatsd(NATS服务器),并与gnatsd进行通信,通信基于普通的TCP/IP套接字,并定义了很小的操作集,换行表示终止。 与传统的、使用了二进制消息格式的消息通信系统不同原创 2016-03-28 14:04:28 · 4896 阅读 · 3 评论 -
Nats的消息通信模型
Nats的消息通信模型作者:chszs,未经博主允许不得转载。NATS的消息通信是这样的:应用程序的数据被编码为一条消息,并通过发布者发送出去;订阅者接收到消息,进行解码,再处理。订阅者处理NATS消息可以是同步的或异步的。异步处理异步处理使用回调消息句柄处理消息,当有消息到来时,已注册的回调句柄接收并控制处理消息。整个过程客户端不会被阻塞,可以同步执行其它任务。异步处理可以采用多线程调度的设计。原创 2016-03-28 11:39:17 · 6768 阅读 · 0 评论 -
一种开源的分布式消息系统Nats
一种开源的分布式消息系统Nats作者:chszs,未经博主允许不得转载。NATS是一个开源的、轻量级的、高性能的分布式消息通信系统,实现了高可伸缩性和优雅的发布/订阅模型。NATS适合云基础设施的消息通信系统、IoT设备消息通信和微服务架构。Apcera团队负责维护NATS服务器(Golang语言开发)和客户端(包括Python、Ruby、Node.js、Elixir、Java、Nginx、C和C#),开源社区也贡献原创 2016-03-28 11:17:14 · 20181 阅读 · 1 评论 -
消息系统NATS常见的几个问题
消息系统NATS常见的几个问题作者:chszs,未经博主允许不得转载。经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs1)Request()和Publish()之间的不同Publish()发送一条消息到gnatsd,是使用它的地址作为一个subject,而gnatsd交付消息给所有注册了此subject的订阅者。可选地是,你还可以发送带reply subject原创 2016-04-03 16:35:04 · 11378 阅读 · 1 评论 -
NATS服务器配置详解
NATS服务器配置详解作者:chszs,未经博主允许不得转载。尽管NATS可以无配置的运行,但也可以使用配置文件配置NATS服务器。1)配置项包括* 客户端监听器端口 Client listening port* HTTP监听器端口 HTTP monitoring port* 客户端认证 Client auth* 集群定义 Cluster definitions* 集群路由 Cluster r原创 2016-03-31 15:10:39 · 9147 阅读 · 0 评论 -
XMPP客户端库Smack 4.0.6版开发之五
XMPP客户端库Smack 4.0.6版开发之五作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs四、使用Chat消息通信来回收发消息是即时通信的核心功能。尽管单条消息是以包的形式发送和接收的,通常还是把他视为聊天的消息字符串,使用org.jivesoftware.smack.Chat类。1、Chat类一个聊天Chat会在两个用户之间创建一个消息线程(通过原创 2014-11-30 10:41:39 · 5742 阅读 · 4 评论 -
深入认识Tigase XMPP Server(下)
深入认识Tigase XMPP Server(下)作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs接上一篇文章《深入认识Tigase XMPP Server(上)》。8、Android Messenger完全支持XMPP/Jabber的主要规范和大多数扩展,至此文档和照片的分享,好友的地理位置的分享。Android Messenger是一个全功能的XMP原创 2014-11-19 15:59:34 · 15679 阅读 · 4 评论 -
Windows Azure队列与服务总线队列的比较
《Windows Azure队列与服务总线队列的比较》作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs在微软Azure云平台上,有两种队列实现,一种是Windows Azure Queue,另一种是Service Bus Queue。一、介绍微软的Windows Azure支持两种类型的队列机制:一是Windows Azure队列,二是服务总线队列。Wi原创 2014-05-06 23:22:56 · 4830 阅读 · 1 评论 -
Apache Kafka开发入门指南
Apache Kafka开发入门指南作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszsApache Kafka可以帮助你解决在发布/订阅架构中遇到消费数百万消息的问题。如今,商业应用、社交应用以及其它类型的应用产生的实时信息在不断增长,这些信息需要以简单的方式快速、可靠地路由到各种类型的接收者。在大多数情况下,产生信息和消费信息的应用都是自然分开的,彼此不原创 2014-03-10 00:11:04 · 23422 阅读 · 0 评论 -
利用数据库存储订单、通知和任务,构建高性能队列
利用数据库存储订单、通知和任务,构建高性能队列原文地址:http://www.codeproject.com/Articles/110931/Building-High-Performance-Queue-in-Database-for-st作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs引言到处都有队列。很多Web网站,经常可以看到使用队列来异步发送通翻译 2014-03-12 16:03:00 · 15402 阅读 · 5 评论 -
Apache Kafka开发入门指南之2
Apache Kafka开发入门指南之2作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszsApache Kafka目标是统一离线和在线处理,与Flume和Scribe相比较,Kafka在处理活动流数据方面更具优势。但是从架构的视野来看,Kafka与传统的消息系统(例如ActiveMQ或RabbitMQ)更相似一些。注:Scribe是Facebook开源的日原创 2014-03-12 11:28:42 · 10695 阅读 · 0 评论 -
ActiveMQ 5.9版将支持基于WebSocket的MQTT协议传输
《ActiveMQ 5.9版将支持基于WebSocket的MQTT协议传输》作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs越来越多的用户希望能使用浏览器通过WebSockets直接连接到ActiveMQ服务器。经过相当长的一段时间,我们已经支持STOMP客户端,可以从JavaScript中使用STOMP。现在,更多的移动用户尝试使用同样的办法,我们在A翻译 2013-07-10 16:51:58 · 12479 阅读 · 0 评论 -
消息中间件规范JMS 2.0的十大改进
消息中间件规范JMS 2.0的十大改进作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs消息中间件规范JMS 2.0在编码方面做了很多改进,可以帮助开发者减少编写的代码量。下面,由我一一说明。一、用JMSContext取代了Connection和Session对象消息中间件规范JMS 2.0引入了一个新对象——JMSContext,它提供了原先Connec原创 2013-05-04 21:55:16 · 7437 阅读 · 0 评论 -
消息中间件的技术选型心得-RabbitMQ、ActiveMQ和ZeroMQ
消息中间件的技术选型心得-RabbitMQ、ActiveMQ和ZeroMQ作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszsRabbitMQ、ActiveMQ和ZeroMQ都是极好的消息中间件,但是我们在项目中该选择哪个更适合呢?很多开发者面临这个烦恼。下面我会对这三个消息中间件做一个比较,看了后你们就心中有数了。RabbitMQ是AMQP协议领先的一个实原创 2013-01-07 23:18:39 · 109781 阅读 · 9 评论 -
AMQP协议介绍
AMQP协议介绍AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。AMQP在消息提供者和客户端的行为进行了强制规定,使得不同卖商之间真正实现了互操作能力。JMS是早期消息中间件进行标原创 2010-01-16 23:00:00 · 7223 阅读 · 3 评论 -
消息通信库ZeroMQ 4.0.4安装指南
消息通信库ZeroMQ 4.0.4安装指南作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs一、ZeroMQ介绍ZeroMQ是一个开源的消息队列系统,按照官方的定义,它是一个消息通信库,帮助开发者设计分布式和并行的应用程序。首先,我们需要明白,ZeroMQ不是传统的消息队列系统(比如ActiveMQ、WebSphereMQ、RabbitMQ等)。ZeroM原创 2014-04-27 10:19:37 · 15774 阅读 · 1 评论 -
分布式消息系统Jafka入门指南
分布式消息系统Jafka入门指南作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs一、JafkaMQ简介JafkaMQ是一个分布式的发布/订阅消息系统,它是Apache Kafka的Java移植版。2013年11月28日,JafkaMQ发布了1.2.3版。JafkaMQ的特征如下:1)消息持久化到磁盘的算法时间复杂度为O(1),即使是TB级的消息存储,也能原创 2014-04-28 15:28:53 · 13927 阅读 · 0 评论 -
分布式消息系统Jafka入门指南之二
分布式消息系统Jafka入门指南之二作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs三、Jafka的目录结构1、安装tree命令$ sudo yum install tree2、查看目录$ tree -L 1.?..?? bin?..?? conf?..?? data?..?? lib?..?? LICENSE?..?? logs?..?原创 2014-04-29 10:35:07 · 5963 阅读 · 0 评论 -
深入认识Tigase XMPP Server(上)
深入认识Tigase XMPP Server(上)作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs本文的目的是深入认识Tigase XMPP Server的特性。1、Tigase HTTP API实现XMPP和HTTP之间的桥梁,可通过REST调用实现对Tigase安装的管理和维护,可通过脚本API在运行时进行扩展。使用HTTP API组件,可以:1)下原创 2014-11-19 13:57:34 · 35194 阅读 · 9 评论 -
Grizzly开发Echo服务器实战
Grizzly开发Echo服务器实战作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs用Java编写可伸缩的服务器应用是有难度的,用Java NIO开发、线程管理、为成千上万的用户做服务器扩展,这些都是难点。Grizzly NIO框架的设计目标就是帮助开发者很好地利用Java NIO API,编写出高可扩展性的、功能强大的服务器,并提高了扩展的框架组件:W原创 2014-10-24 14:16:34 · 4573 阅读 · 1 评论 -
Apache Mina开发手册之三
Apache Mina开发手册之三作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs2、Mina服务器的架构Mina服务器的架构图如下所示:1)IOAcceptor即I/O接收器,负责监听网络连接和发过来的数据包。2)对于任一新连接,会创建一个新会话,随后所有从该IP地址:端口发送过来的请求都会由该会话进行处理。3)会话接收到的所有包,都会通过整个过滤器链原创 2014-09-27 21:24:52 · 2949 阅读 · 2 评论 -
Apache Mina开发手册之二
Apache Mina开发手册之二作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs四、NIO概述NIO API是Java 1.4版引入的,NIO的意思是非阻塞的I/O通信。要知道Mina的NIO是基于NIO-1开发的,而在JDK 7中引入了NIO-2的库,但Mina还没有从NIO-2中获得各方面的提升,因此Mina还是基于NIO-1的。虽然Oracle官原创 2014-09-25 13:34:39 · 3162 阅读 · 1 评论 -
Apache Mina v2.0.8 API手册
Apache Mina v2.0.8 API手册作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs我自己制作了一份《Apache Mina v2.0.8 API手册》,chm格式,免费提供给大家。下载地址:http://download.csdn.net/detail/chszs/7972791资源大小:3.73MB资源类型:文档资源格式:chm原创 2014-09-25 13:49:15 · 7885 阅读 · 5 评论 -
Apache Mina开发手册
Apache Mina开发手册作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs一、介绍Apache Mina是一个网络应用框架,简化用户开发高性能、高可扩展性的网络应用程序的难度。Mina提供了一个抽象的事件驱动的异步API,通过Java NIO实现各种传输协议如TCP/IP和UDP/IP。Apache Mina经常用作:1)NIO框架库2)客户端/服务原创 2014-09-24 17:23:11 · 7963 阅读 · 1 评论 -
Win7安装并配置Tigase 5.2服务器
Win7安装并配置Tigase服务器作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs1、下载tigase-server-5.2.0-b3447.exe2、执行可执行文件,解压出tigase-server-5.2.0-b3447.jar,放到D盘根目录3、以管理员权限打开CMD环境,并执行以下命令:D:\>java -jar tigase-server-5原创 2014-06-16 10:15:43 · 8224 阅读 · 7 评论