apollo各协议支持的客户端
apollo 源自 activemq,以快速、可靠著称,支持多协议:STOMP, AMQP, MQTT, Openwire, SSL, and WebSockets,下面就STOMP, AMQP, MQTT客户端进行介绍。
以下针对apollo 1.7.1 进行介绍
1、stomp
1.1 stomp client
apollo1.7.1 支持stomp1.0、1.1、1.2三个版本,各种语言的客户端支持的版本各不相同,下面是官方给的一个完整的列表
| Name | Language | Description | Compliance |
|---|---|---|---|
| Ruby | an attempt to bring the simplicity and elegance of Rails development to the world of messaging | 1.0 | |
| Perl | a lightweight event-driven STOMP client | 1.0 | |
| C++ | is a JMS-like API for C++ | 1.0 | |
| C# and .Net | a JMS-like API for .Net | 1.0 | |
| Flash | an actionscript 3 implementation of the STOMP protocol | 1.0 | |
| Delphi and FreePascal | a STOMP client for Embarcadero Delphi and FreePascal | 1.0 | |
| Dynamic C | a STOMP client library written in Dynamic C for Rabbit | 1.0 | |
| Java | a lightweight implementation of the STOMP specification | 1.0 | |
| Haxe | a TCP socket-based STOMP protocol client library written for the Haxe language | 1.0 | |
| C | an APR based C library | 1.0 | |
| Perl | a Streaming Text Orientated Messaging Protocol client | 1.0 | |
| Perl | STOMP object oriented client module | 1.0 1.1 1.2 | |
| Objective-C | a simple STOMP client based on AsynSocket | 1.0 | |
| Perl | a Perl extension for the POE Environment | 1.0 | |
| Ruby | client library for message passing with brokers that support the STOMP protocol | 1.0 1.1 | |
| Pike | Public.Protocols.Stomp | 1.0 | |
| Python | module for communicating with the ActiveMQ message broker | 1.0 | |
| PHP | STOMP bindings for React | 1.1 | |
| PHP | a simpler STOMP client for PHP | 1.0 | |
| Java | a Java implementation of the STOMP 1.2 specification | 1.2 | |
| PHP | STOMP client extension | 1.0 | |
| Ruby | client for the STOMP messaging protocol | 1.0 1.1 | |
| Python | a client implementation of the STOMP protocol | 1.0 | |
| Erlang | a STOMP client for Erlang | 1.0 | |
| Python | a full-featured STOMP implementation for Python including both synchronous and asynchronous clients | 1.0 1.1 1.2 | |
| Objective-C | modern event-driven Objective-C library for STOMP | 1.2 | |
| Python | implementation of the STOMP protocol in Python | 1.0 | |
| Go | a STOMP 1.1+ Client Package | 1.0 1.1 1.2 | |
| PHP | the FuseSource PHP client implementation | 1.0 | |
| Python | a Python client library which can also be run as a standalone, command-line client for testing. | 1.0 1.1 1.2 | |
| JavaScript | is a JavaScript library for Web browsers using STOMP Over HTML Web Sockets | 1.0 1.1 | |
| TCL | a STOMP Implementation for TCL | 1.1 | |
| PHP | for Zend PHP clients | 1.0 |
1.2 stomp client官方示例
C#: NMS
C: CMS
JAVA:fusesource
Perl:Net::STOMP::Client
Python:stomppy、stompest
ruby:stomp
2、AMQP协议
2.1 AMQP client
Apollo 1.7.1 支持AMQP 1.0,凡是支持AMQP1.0的client,都可以与Apollo 1.7.1 进行交互。
当然,为了更好地支持amqp协议,建议你在apollo的配置文件中添加以下amqp的默认协议端口
<connector id="amqp" bind="tcp://0.0.0.0:5672"/>
<connector id="amqps" bind="ssl://0.0.0.0:5671"/>
2.2 amqp client 官方示例
官方特别推荐了 Apache Qpid Proton project (支持C、C++、Java、Python) http://qpid.apache.org/proton/
java: Proton
python: Proton
3、mqtt协议
3.1 apollo 1.7.1支持 v3.1 协议,支持以下客户端
- Java : mqtt-client, MeQanTT
- C : libmosquitto
- Erlang : erlmqtt, my-mqtt4erl
- .NET : MQTTDotNet, nMQTT
- Perl : net-mqtt-perl, [anyevent-mqtt-perl]https://github.com/beanz/anyevent-mqtt-perl()
- Python : nyamuk
- Ruby : mqtt-ruby, ruby-em-mqtt
- Javascript : Node.js MQTT Client
- Delphi : TMQTTCLient
- Device specific: Arduino, mbed, Nanode, Netduino
完整列表请移步这里 https://github.com/mqtt/mqtt.github.io/wiki/libraries
3.2 官方示例
Java: mqtt-client
apollo各协议支持的客户端的更多相关文章
- [转载]socket下server端支持多客户端并发访问简单实现
/*Author: wainiwann *Source: 博客园 http://www.cnblogs.com/wainiwann *Remarks: 转载请说明出处!!! */ 感觉很不错,可以学 ...
- Qt5 基于TCP传输的发送/接收文件服务器(支持多客户端)
一.实现功能 1.服务器端选择待发送的文件,可以是多个 2.开启服务器,支持多客户端接入,能够实时显示每个客户端接入状态 3.等待所有客户端都处于已连接状态时,依次发送文件集给每个客户端,显示每个客户 ...
- MQTT协议笔记之mqtt.io项目HTTP协议支持
前言 MQTT协议诞生之初,就未曾考虑通过HTTP传输.这也正常,网络受限.不稳定网络不太适合HTTP(2G/3G网络大家使用WAP不也OK嘛).在网络较为充裕的桌面端而言,虽纯文本对比二进制而言没多 ...
- 牛客网Java刷题知识点之UDP协议是否支持HTTP和HTTPS协议?为什么?TCP协议支持吗?
不多说,直接上干货! 福利 => 每天都推送 欢迎大家,关注微信扫码并加入我的4个微信公众号: 大数据躺过的坑 Java从入门到架构师 人工智能躺过的坑 ...
- 【推荐】CentOS安装Subversion-1.8.11+HTTP协议支持配置
注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. 我们需要搭建一个自己的SVN服务器. 此外,搭建好的SVN服务器除了需要支持svn协议外,最好还需要支持HTTP协议和HTTPS协 ...
- Jmeter中Websocket协议支持包的使用
Jmeter中Websocket协议支持包的使用(转) 参考的来源是国外一篇文章,已经整理成pdf格式(http://yunpan.cn/cFzwiyeQDKdh3 (提取码:9bcf)) 转自:ht ...
- C#实现http协议支持上传下载文件的GET、POST请求
C#实现http协议支持上传下载文件的GET.POST请求using System; using System.Collections.Generic; using System.Text; usin ...
- 【推荐】CentOS安装Subversion-1.8.17+HTTP协议支持配置
注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. 我们需要搭建一个自己的SVN服务器. 此外,搭建好的SVN服务器除了需要支持svn协议外,最好还需要支持HTTP协议和HTTPS协 ...
- 推流协议 支持RTMP协议推流
Stream Type Stream play domain nameStreaming Domain Name 播流 推流 推流协议 支持RTMP协议推流
随机推荐
- goland激活
http://blog.csdn.net/benben_2015/article/details/78725467 http://blog.csdn.net/john_f_lau/article/de ...
- 【HTML5游戏开发】简单的《找不同汉字版》,来考考你的眼力吧
一,准备工作 本次游戏开发需要用到lufylegend.js开源游戏引擎,版本我用的是1.5.2(现在最新的版本是1.6.0). 引擎下载的位置:http://lufylegend.googlecod ...
- UVA10534:Wavio Sequence(最长递增和递减序列 n*logn)(LIS)好题
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=68553#problem/B 题目要求: Wavio是一个整数序列,具有以下特性 ...
- UVA10763:Foreign Exchange&&UVA10340: All in All(水题)
10763:水题不解释直接贴代码. #include <iostream> #include <string.h> #include <stdio.h> #incl ...
- PAT 1099 Build A Binary Search Tree[BST性质]
1099 Build A Binary Search Tree(30 分) A Binary Search Tree (BST) is recursively defined as a binary ...
- Linux命令 lsof使用
lsof(list open files)是一个列出当前系统打开文件的工具.在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件. lsof +d ...
- centos7安装rabbitmq并简单使用
先安装erlang rpm -Uvh http://www.rabbitmq.com/releases/erlang/erlang-18.1-1.el7.centos.x86_64.rpm 安装rab ...
- Linux系统——源码编译安装
记得要先去把httpd-2.2.9.tar.gz通过xftp进行文件传输第一步:yum仓库下安装编译环境的支持程序 #yum -y install gcc gcc-c++ make 第二步:将源码包h ...
- SQL Server返回插入数据的ID和受影响的行数
首先看看数据库里面的数据(S_Id为自增长标识列): sql server 中返回上一次插入数据的ID(标识值)有三种方式: 第一种 @@IDENTITY: insert into Student(S ...
- JS答辩习题
php高中班javascript答辩题目 1 什么是javascript? 答:Javascript是一种专门设计用来增强网页交互性的脚本语言,它也是一种解释型语言. 2 Javascript与C语 ...