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协议推流
随机推荐
- 安全篇:弱密码python检测工具
安全篇:弱密码python检测工具 https://github.com/penoxcn/PyWeakPwdAudit
- oracle入门(5)——java连接oracle数据库
[本文介绍] 前面几篇说了那么多,最终还没讲到如何用java连接数据库,本文实用一点,讲讲如何连接数据库. [java连接oracle数据库] 1.导入jdbc驱动:看到这里,就忙着上网找驱动?不,安 ...
- 对BeforeSuite和BeforeTest的理解
在BeforeSuite.BeforeTest.BeforeClass.BeforeMethod及BeforeGroups中,后面三个注解都比较好理解,其实BeforeSuite.BeforeTest ...
- 001-hive是什么
一.基本概念 官网含义:https://cwiki.apache.org/confluence/display/Hive/Home The Apache Hive™ data warehouse so ...
- G729 详细使用文档
https://tools.ietf.org/html/rfc4749 git://git.linphone.org/linphone-android.git http://stackoverflow ...
- 《FTL之垃圾回收、写放大和OP 》总结
来自 http://www.ssdfans.com/?p=1840: 写放大WA: 对空盘来说(未触发GC),写放大一般为1,即Host写入多少数据,SSD写入闪存也是多少数据量(这里忽略SSD内部数 ...
- Python第一个爬虫学习
在网上查看大神的关于Python爬虫的文章,代码如下: #coding=utf-8 import urllib import re def getHtml(url): page = urllib.ur ...
- Oracle DB 使用RMAN将数据库移植到ASM存储区
1. 完全关闭数据库. 2. 关闭数据库并修改服务器参数文件,以使用Oracle Managed Files (OMF). 3. 编辑并执行以下RMAN 脚本: STARTUP NOMOUNT; RE ...
- python全栈开发从入门到放弃之异常处理
1.try except num = input('num : ') #try在阶段中处理异常 try: f = open('file', 'w') int(num) except ValueErro ...
- The 15th UESTC Programming Contest Preliminary H - Hesty Str1ng cdoj1551
地址:http://acm.uestc.edu.cn/#/problem/show/1551 题目: Hesty Str1ng Time Limit: 3000/1000MS (Java/Others ...