程序安装
CP7 消息服务器可跨平台运行在 Linux、FreeBSD、Mac OS X 或 Windows(Docker) 服务器上。
Last updated
CP7 消息服务器可跨平台运行在 Linux、FreeBSD、Mac OS X 或 Windows(Docker) 服务器上。
Last updated
备注:
Coolpy7所有发行版没有特别说明的情况下只支持64bit系统,因为32bit操作系统最大只支持4G内存,作为高性能的消息服务系统,CP7需要大于4G的内存运行。
Coolpy7会出现可运行于简易设备的版本,例如MIPS框架基本上使用于OpenWrt操作系统。还有基于ARM的相关微型设备等等。
7.3.5.5版本开始ws-proxy服务已整合到cp7内核
CP7核心服务器
CP7 TLS TCP 代理服务器
CP7 WebSocket 代理服务器
CP7 WebSocket TLS 代理服务器
CP7 数据库代理服务器
应用程序
默认端口
协议
说明
1883
TCP
MQTT 协议端口
8883
TCP
MQTT/TLS1.2 端口
8084
TCP
MQTT/WebSocket/TLS1.2 端口
防火墙根据使用的 MQTT 接入方式,开启上述端口的访问权限。
扩展功能
开源地址
状态
说明
CP7 TLS代理服务器
已对接
核心功能
CP7 WS-TLS代理服务器
已对接
核心功能
CP7 DbPoxy代理服务器
已对接
核心功能
CP7 MQTT-SN代理服务器
已对接
扩展功能
CoAP
未对接
扩展功能
服务名称
IP
协议
端口
备注
CP7核心服务
192.168.200.201
TCP
1883
CP7核心服务 TLS代理
192.168.200.202
TCP
8883
CP7 WS-TLS代理服务器
192.168.200.204
TCP
8084
CP7数据库代理
192.168.200.205
TCP
无
Mongodb数据库
192.168.200.206
TCP
27017
Gridfs->OSS
CP7核心服务是一个最原始最单纯功能完备的MQTT消息服务器端,包括功能有:QoS:0,QoS1,QoS2消息质量支持。Will消息支持等等。深入了解 https://mcxiaoke.gitbooks.io/mqtt-cn/content/
防止暴力连接攻击,对已连接客户端进行优先保护
防止空连接攻击,当用户连接建立后两秒钟内没有进行身份验证即主动关闭客户端连接
通过ssh进入服务器192.168.200.201,并确保你已经按照 https://coolpy7.gitbook.io/coolpy7book/kai-shi-shi-yong/start 配置服务器操作系统的网络优化配置。
CP7核心服务运行后会自行构当前目录下的data文件夹,此文件夹存放MQTT运行期所需求持久化的数据信息,使用的是开源项目 https://github.com/jacoblai/yiyidb,支持10亿级秒op的高性能数据库,数据库内核使用的是Leveldb技术。
一般需为程序提权才可以运行Linux服务,指令:chmod -R 777 go_build_Coolpy7_go_linux
此功能即为CP7核心服务提供TLS接入功能。通过ssh进入服务器192.168.200.202,并确保你已经按照 https://coolpy7.gitbook.io/coolpy7book/kai-shi-shi-yong/start 配置服务器操作系统的网络优化配置。
此服务开源地址:https://github.com/Coolpy7/Coolpy7-TLS-Poxy
TLS服务需要对应域名的数字证书
以阿里云为例可以进入对应域名的管理后台下载证书,把key和pem文件复制到data文件夹下,并命名为server.key和server.pem
此功能即为CP7核心服务提供WebSocket接入功能。默认端口为8083
千万级WebSocket代理服务器
支持防爆力攻击
此功能即为CP7 WebSocket代理服务提供TLS接入功能。通过ssh进入服务器192.168.200.204,并确保你已经按照 https://coolpy7.gitbook.io/coolpy7book/kai-shi-shi-yong/start 配置服务器操作系统的网络优化配置。
开源地址:https://github.com/Coolpy7/Coolpy7-WS-TLS-Poxy
CP7 DbPoxy数据库代理服务器支持 MongoDB、Mysql、Mssql、Pgsql等主流数据库。当使用mongodb作为数据库即可使用Gridfs特性支持文件存储功能,即可实现对象存储(Object Storage Service,简称OSS)功能。
单个DbPoyx数据库代理运行实例只允许连接一种数据库。支持多实例连接多种数据库提供服务器。
开源地址:https://github.com/Coolpy7/DbPoxy
本例使用mongodb演示并假设网络环境中在192.168.200.206中已运行一个未开户身份验证的mongod服务,并Host端口于27017
安装方式请参阅Mongodb官方文档:https://docs.mongodb.com/manual/installation/
配置文件说明
配置文件默认所有路径:/data/dbpoxy.yml
通过以上操作,我们已经得出一套完整的千万级MQTT消息系统。下一章介绍如何用客户端工具验证系统功能。
用户账户指南
当需要对接任何用户账号数据库时,请参阅 《Coolpy7(IOT)通用控制协议》一书,里边祥尽介绍如果通过协议实现对数据库的CURD操作。