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协议推流
随机推荐
- JavaWeb-HttpServletResponse对象一
web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象,和代表响应的response对象.resquest和response对象既然代表请求和响应,那么要 ...
- C++ 类的两种定义方式
类内定义 class Teacher { private: string _name; int _age; public: Teacher() { printf("create techer ...
- webuploader 多图片上传
WebUploader是由Baidu WebFE(FEX)团队开发的一个简单的以HTML5为主,FLASH为辅的现代文件上传组件. 具体接口参考 webuploader接口文档地址 一.图片上传功能 ...
- Linux常见错误之Could not get lock /var/lib/dpkg/lock - open
在Ubuntu系统上安装vim是遇到的问题: root@ubuntu:/# vim The program 'vim' can be found in the following packages: ...
- PHP 语言结构(Language constructs)和函数的区别
相信大家经常看到对比一些PHP应用中,说用isset() 替换 strlen(),isset比strlen执行速度快等. 例子: if ( isset($username[5]) ) { // The ...
- 持续(集成-->交付-->部署)
软件的开发工作的大致流程 编码 -> 构建 -> 集成 -> 测试 -> 交付 -> 部署 由上图可知「持续集成(Continuous Integration)」.「持续 ...
- windows 常用cmd命令
为了减少使用鼠标的频次,熟记一些常用应用的快捷键与系统本身常用的命令是必须的,以下记录一些常用的windows系统命令. 查看网络端口占用情况 :netstat -ano | findstr 8080 ...
- Core ML 入门
1.下载Xcode 9 2.下载模型,https://developer.apple.com/machine-learning/ 3.开动.. 4.待续 模拟器66的
- .NET Core + EF 报nuget包不兼容
错误信息如下: 严重性 代码 说明 项目 文件 行 禁止显示状态错误 NU1107 Microsoft.EntityFrameworkCore 中检测到版本冲突.直接安装/引用 Microsoft.E ...
- Linux远程管理器xshell和xftp使用教程,以及遇到关闭Xshell后项目也停止的解决方法
1.xshell 是一个强大的安全终端模拟软件,它支持SSH1, SSH2, 以及Microsoft Windows 平台的TELNET 协议. 2.是一个基于 MS windows 平台的功能强大的 ...