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协议推流
随机推荐
- jquery prop attr
checked比较特殊,只要设置了属性checked,不管何值都是checked的.例如:<input type="checkbox" checked><inpu ...
- python 的弹框
import easygui easygui.msgbox("This is a message!", title="simple gui")
- IntBuffer类的基本用法
package com.ietree.basicskill.socket.basic.nio; import java.nio.IntBuffer; /** * Created by Administ ...
- 使用stringstream格式化字符串
stringstream所在头文件为<sstream> 一般有如下常用功能: 1.安全格式化字符串 stringstream常用来安全的格式化若干个字符串,数值到一个缓冲区, 而不用担心溢 ...
- python 中字典的操作(增、删、改、查)
字典是另一种可变容器模型,且可存储任意类型对象,下标从0开始,最后一个为-1. 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({}) ...
- 4. MySQL必知必会之排序检索数据-ORDER BY
本章将讲授如何使用SELECT语句的ORDER BY子句,根据需要排序检 索出的数据. 1. 排序数据
- XDU 1109
#include<stdio.h> #define N 10007 #define maxn 1000005 int dp[maxn]; int main() { dp[]=,dp[]=, ...
- 将jar包发布到nexus仓库
版本的快速迭代不适合release发布到仓库,snapshot方便版本的快速迭代. 1.pom改为snapshot <dependency> <groupId>com.sf.c ...
- SqoopFlume、Flume、HDFS之间比较
Sqoop Flume HDFS Sqoop用于从结构化数据源,例如,RDBMS导入数据 Flume 用于移动批量流数据到HDFS HDFS使用 Hadoop 生态系统存储数据的分布式文件系统 Sqo ...
- Spring 实现数据隔离
需求 用户数据要同时支持在mysql和redis进行管理.存储. 思路 利用spring的注解,在配置中指定存储类型,启动时识别并选择对应的实现类. 代码 1. 用户管理的接口类 public int ...